Remplacement de Glob()

Remplacement de Glob() - PHP - Programmation

Marsh Posté le 01-03-2008 à 15:03:01    

bonjour
 
Comme Glob() ne fonctionne pas sur le serveur sur lequel se trouve un de mes sites, je cherche un remplacement; j'ai trouvé cette fonction:

Code :
  1. function glob_rec($pattern, $path)
  2. {
  3. return explode("\n", shell_exec("find $path -name $pattern" ));
  4. }

 
mais il me manque une explication pour la faire fonctionner.
 
En effet, je ne sais manifestement pas exprimer $path, ne connaissant pas le langage Shell; j'ai essayé et cherché mais sans trouver jusqu'ici.
 
Pour le répertoire où se trouve la page contenant la fonction, j'ai essayé $files = glob_rec("*.*","" );
Pour un sous-répertoire, j'ai essayé $files = glob_rec("*.*","/Clic 1 Initiation" );
sans succès.
 
Merci de m'indiquer comment faire, si possible avec un exemple ou deux.
 
Francois

Reply

Marsh Posté le 01-03-2008 à 15:03:01   

Reply

Marsh Posté le 02-03-2008 à 02:11:15    

ca ne marche pas car tu utilise des espaces dans ton dossier
préfixe les par des \, et préfixe ton nom de dossier par ./ pour qu'il scanne a partir de l'emplacement courant (/ = racine du serveur, donc pas bon dans ton exemple)
 
autrement dit :
$files = glob_rec("*.*","./Clic\ 1\ Initiation/" );

Reply

Marsh Posté le 02-03-2008 à 20:51:39    

bonjour Spike et merci de ta réponse.
 
Même avec tes corrections, ça ne fonctionne pas pour ce sous-répertoire.
 
Egalement, pour le répertoire même où se trouve la page contenant le code Php, j'avais inqué "" pour le $path et ça n'avait rien donné non plus.
 
Je continue à chercher; merci encore.
 
Francois

Reply

Marsh Posté le 02-03-2008 à 22:19:56    

pour le répertoire courant essaye "." plutot.
 
par contre si sur un serveur glob est désactivé, il faut s'assurer que shell_exec ne le soit pas elle aussi :)

Reply

Sujets relatifs:

Leave a Replay

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