file_exists et noms de fichiers maj/min

sylv
Invité n'ayant pas de compte PHPfrance

17 mars 2006, 00:56

Bonjour, je teste avec file_exists si le fichier "index.php" est présent ou pas. Ca marche mais que si le nom "index.php" est écrit en minuscule or je voudrais qu'il me renvoie true même si c'est "IndEx.pHp".
Y a t il une astuce qui existe sans tester toutes les combinaisons possibles majuscule/minuscules?

Merci d'avance.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

17 mars 2006, 01:32

Salut,

essaie en utilisant strtolower() avant le test d'existence.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 451 Messages

17 mars 2006, 07:21

Bonjour, je teste avec file_exists si le fichier "index.php" est présent ou pas. Ca marche mais que si le nom "index.php" est écrit en minuscule or je voudrais qu'il me renvoie true même si c'est "IndEx.pHp".
Y a t il une astuce qui existe sans tester toutes les combinaisons possibles majuscule/minuscules?

Merci d'avance.
Hum, me semble que ça depend si tu es sous unix ou windows non ?
Sur unix, index.php et IndEx.pHp seront 2 fichiers différents alors que sur windows ce sera un seul et même fichier.

Mammouth du PHP | 768 Messages

17 mars 2006, 10:17

Hum, me semble que ça depend si tu es sous unix ou windows non ?
exactement, mais Truc a donné la solution
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Invité
Invité n'ayant pas de compte PHPfrance

17 mars 2006, 10:34

Hum, me semble que ça depend si tu es sous unix ou windows non ?
exactement, mais Truc a donné la solution
Oups !
Ok tel que la question est formulée, vous avez raison (j'étais pas encore réveillé ce matin).
Par contre, si comme j'avais cru le comprendre au départ, c'est sur unix et que le fichier a pour nom IndEx.pHp sur le disque, strtolower va donner index.php dans tous les cas et file_exists dira que le fichier n'existe pas.

Mammouth du PHP | 768 Messages

17 mars 2006, 10:44

bah renomme tes fichiers en minuscule 8-[
sinon la solution serait de parcourir la liste des fichiers dans le dossier..., de stocker les noms en minuscule dans un array et ensuite de faire une recherche avec in_array()... la première solution est plus simple non ?
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?