fopen pour tester la presence d'une image

WRInaute impliqué
Bonsoir,

fopen est 'il suffisant pour tester la presence d'une image,
si mon image est bien présente à l'adresse indiquée elle s'affiche
mais si elle n'est pas présente mon image de substitution
ne s'affiche pas ? une idée
if (@fclose(@fopen("$tab[0]", "r"))) {
$dataimage="src='$tab[0]'";
} else {
$dataimage="src='/img/nondispo.jpg'";
}

echo "<LI class=a><img width=$large $dataimage alt='($tab[2])'>";

Ou alors:
Est ce qu'il y moyen de rcuperer les en-têtes HTTP et déterminer la taille du fichier
avec Content-Length car si Content-Length = 0, l'image n'existe pas.


mais quel type de code utiliser?

ludo
 
WRInaute impliqué
kazhar a dit:
ahem
la fonction file_exists() existe tu sais.


Etant à la recherche d'un code imparable pour tester la presence d'une image
sur un serveur externe, fopen etant insuffisant, j'ai fini
par trouver ce code qui fonctionne, je le laisse donc à votre appréciation
pour l'améliorer ou le simplifier

$size = @getimagesize($tab[0]);
$fp = fopen($tab[0], "rb");
if ($size && $fp) {
$dataimage="src='$tab[0]'";
} else {
$dataimage="src='/img/nondispo.jpg'";
}
 
Discussions similaires
Haut