Les chemins des répertoires linux => case Sensitive PHP

Les chemins des répertoires linux => case Sensitive PHP - PHP - Programmation

Marsh Posté le 25-08-2004 à 17:45:41    

Hello.
Je recois une url du type /home/test/fOOt/lapin/bigmac.log
je dois checker si il existe chacun des repertoires ainsi que le fichier ET : si il existe le répertoire foot et pas fOOt, utiliser le bon repertoire linux.
Je m'explique :  
si je tape /home/test/fOOt/lapin/bigmac.log
et que mon linux posséde : /home/test/foot/LAPIN/bIgMaC.log , que le fichier soie valide.
en gros, adapter mon url pour supprimer l'effet de case sensitive. Une idée pour faire cela pas trop difficilement ?
 
EDIT : => but : faire un lien sur un fichier même si l'adresse n'a pas respecté le "case sensitive" du serveur.


Message édité par moxfulder le 25-08-2004 à 17:52:27
Reply

Marsh Posté le 25-08-2004 à 17:45:41   

Reply

Marsh Posté le 26-08-2004 à 09:17:06    

up!

Reply

Marsh Posté le 26-08-2004 à 09:49:51    

Imaginons que tu recherche /home/test/fOOt/lapin/biGmac.log  
Tu testes /home/test/fOOt/lapin/bigmac.log
Si c'est pas bon tu découpes le chemin.
Tu testes /home => ok
Tu testes /home/test => ok
Tu testes /home/test/fOOt => pas ok :
- tu cherches les répertoires de /home/test/
- tu testes chacun pour voir si il n'est pas égal à fOOt en case insensitive
- tu trouve foot, donc tu continues avec foot :
Tu testes /home/test/foot/lapin => ok
Tu testes /home/test/fOOt/lapin/biGmac.log => pas ok
- Idem que tout à l'heure sauf que tu cherches un fichier.
Tu trouves finalement /home/test/foot/lapin/bigmac.log


Message édité par pascal_ le 26-08-2004 à 09:50:20
Reply

Marsh Posté le 26-08-2004 à 09:50:03    

Démarche :
 
stocker url
stocker liste des dossiers (tableau je pense)
 
Mettre le tout en majuscules ou en minuscule pour la comparaison (strtoupper, strtolower), si correspondance, remplacer l'url entrée par le chemin réel (avec sa casse) et le tour est joué !

Reply

Marsh Posté le 26-08-2004 à 10:15:03    

deliriumtremens a écrit :

Démarche :
 
stocker url
stocker liste des dossiers (tableau je pense)
 
Mettre le tout en majuscules ou en minuscule pour la comparaison (strtoupper, strtolower), si correspondance, remplacer l'url entrée par le chemin réel (avec sa casse) et le tour est joué !


 
kler c'est comme ça que j'avais pensé faire pour finir. Je m'attaque à la boucle et je poste le code une fois que ça marche :)

Reply

Marsh Posté le 26-08-2004 à 10:38:14    

moxfulder a écrit :

kler c'est comme ça que j'avais pensé faire pour finir. Je m'attaque à la boucle et je poste le code une fois que ça marche :)


 
Enfin, si il faut que tu commences pas /home, ça risque de te prendre un certain temps.

Reply

Marsh Posté le 26-08-2004 à 10:54:59    

oui mais en général ou j'ai le problème c'est 4-5 répertoires plus haut. En fait, je fais un is_dir() avant et je check le repertoire uniquement si le is_dir est failed

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed