PHP: Comment vérifier qu'une url est valide ?
NBO
-
Formateurinternet -
Formateurinternet -
Salut les p'tits loups,
Est ce que quelqun aurait une fonction en php pour vérifier qu'une url est valide. Attention, "valide" dans le send "l'adresse pointe quelque part" (pour éviter les liens morts).
Merci à tous et A+
NBO
Est ce que quelqun aurait une fonction en php pour vérifier qu'une url est valide. Attention, "valide" dans le send "l'adresse pointe quelque part" (pour éviter les liens morts).
Merci à tous et A+
NBO
2 réponses
-
Salut, utilise ce petit bout de code trouvé sur http://www.capitools.up1.fr
<?php
if (!isset($url)) $url = "www.capitools.up1.fr";
$fp = fsockopen($url, 80, &$errno, &$errstr, 30);
if (!$fp) {
echo "Erreur: <B>$errstr</B> ($errno)<BR>"; }
else { fputs($fp,"GET / HTTP/1.0nn");
$reponse = fgets($fp, 128);
echo "Réponse OK: $url existe bien<BR>";
fclose($fp); }
?>
@+ -
Bonjour,
tu peux peut-re t'inspirer de qqch du genre
<?php
$liens = array("http://www.imtel.com", "http://www.wanadoo.be",
"http://wwwn.nimportequoi.com");
foreach($liens as $link)
{
$conn = @fopen($link, "r");
if(! $conn )
{
print("Could not open " .$link . "<br />\n");
}
else
{
print_r($conn);
if( ! feof($conn))
{
$firstline = fgets($conn,2048);
print("$firstline <br />\n");
}
fclose($conn);
}
}
?>
A améliorer...(il faudrait définir des timeout pour les connections)
ou encore regarde sur
http://php.easynet.be/manual/en/function.stream-set-timeout.php
(PHP 4 >= 4.3.0)
Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.