Télécharger
Noter:

Ajouté le 2022-05-25
Visionné 328 fois

Vérifier une URL avec PHP

Description

Comment vérifier une URL en PHP ? La vérification d'une adresse internet peut se faire via une expression régulière (ce qui suit utilise une expression régulière) ou via un filtre déjà intégré à PHP, comme FILTER_VALIDATE_URL mais personnllement je préfère savoir ce que j'accepte ou je refuse avec les regex.

Si vous souhaitez en savoir plus sur les regex PHP, la doc est ici : https://www.php.net/manual/fr/reference.pcre.pattern.syntax.php

//valider une URL sans dossier ni paramètres

$url = "https://www.c2script.com";

//si l'adresse internet est incorrecte, on refuse
if(!preg_match("#^https?:\/\/(?<domaine>(?:www\.)?[-\w]+(?:(?:\.[-\w]+){1,})?\.[a-z]{1,})\/?$#i", $url, $match)){
echo "URL incorrecte";

//L'URL est correcte, validation !
}else{

echo "<h1>L'URL est correcte !</h1>";

echo "URL : ". $match[0] ."<br/>"; // ou $url directement

echo "Domaine : ". $match['domaine'] ."<br/>";


var_dump($match);
}
//valider une URL avec ou sans dossier et paramètres

$url = "https://sous.c2script.com/editer/3";

//si l'adresse internet est incorrecte, on refuse
if(!preg_match("#^https?:\/\/(?<domaine>(?:www\.)?[-\w]+(?:(?:\.[-\w]+){1,})?\.[a-z]{1,})(?<dossiers>(?<parametres>\/[\#\-?&=\w.]+){1,}?)?\/?$#i", $url, $match)){
echo "URL incorrecte";

//L'URL est correcte, validation !
}else{

echo "<h1>L'URL est correcte !</h1>";

echo "URL : ". $match[0] ."<br/>"; // ou $url directement

echo "Domaine : ". $match['domaine'] ."<br/>";

echo "Dossiers et/ou paramètres réécrits avec htaccess : ". (isset($match['dossiers']) ? $match['dossiers'] : '<i>Aucun</i>') ."<br/>";

echo "Derniers paramètres : ". (isset($match['parametres']) ? $match['parametres'] : '<i>Aucun</i>') ."<br/>";


var_dump($match);
}





Besoin de travaux pour votre site ?

Je suis disponible, contactez-moi !

Commentaires

Ajouter un commentaire

Commenter
Pseudo/Nom
Email
Message
Captcha
memo2
Commenter
Pas encore de commentaire, soyez le premier !

Retour à la liste des scripts