Je me demande ce que je fais mal! Je veux lire un dossier et parcourir les fichiers existants, en vérifiant s'il s'agit d'images ou de fichiers texte.PHP: Problème avec la lecture de fichiers
S'il y a des fichiers de texte, ils doivent être placés dans un div, s'il y a des images, ils devraient être affichés en tant qu'image.
<?php
$path = 'thumbs';
if ($handle = opendir($path)) {
while (false !== ($file = readdir($handle))) {
$ext = pathinfo($file, PATHINFO_EXTENSION);
if ($ext == "jpg" || $ext == "jpeg" || $ext == "gif" || $ext == "png") {
print "<img class='thumb' src='$path/$file'/>";
} else if ($ext == "txt" || $ext == "rtf") {
//read text
$lines = file_get_contents($file);
$lines = str_replace("\n","<br/>",$lines);
print "<div class='text'>" . $lines . "</div>";
//read text
}
}
closedir($handle);
}
?>
il semble y avoir un problème que je ne peux pas trouver, parce que toutes les images ont une mise, cependant que l'un des rares textfiles est imprimé. Des idées pour lesquelles il imprime seulement un fichier texte ???
je vous remercie pour votre aide!
Pouvez-vous enregistrer la valeur de $ ext à un fichier texte? Je pense que ce n'est pas réglé correctement. Vous pouvez également essayer d'utiliser un "else" au lieu d'un "else if" pour capturer tout ce que la condition de l'image n'a pas. – barrycarter
Je recommande d'utiliser 'nl2br()' au lieu de remplacer les chaînes (fonctionne aussi sur les fins de ligne Windows) – soulmerge
si je le change en simple "else" au lieu de "else if" cela ne fait pas de différence! – matt