Php

Fermé
emixammax Messages postés 27 Date d'inscription mardi 7 juin 2011 Statut Membre Dernière intervention 11 septembre 2013 - 15 juin 2011 à 14:46
vlmath Messages postés 794 Date d'inscription vendredi 20 octobre 2006 Statut Contributeur Dernière intervention 4 septembre 2011 - 15 juin 2011 à 18:46
Bonjour,
j'aimerai pouvoir faire une cherche dans un dossier en php par exemple je cherche un fichier texte dedans et je voudrai qu'il me dise dans quel dossier celui ci est present
A voir également:

2 réponses

Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 200
15 juin 2011 à 17:16
Tu peux faire ça avec la fonction exec et une commande find.
Par contre il faut que ton utilisateur Unix ai les droits d''accès sur les fichiers/répertoires crawlé.
Voici un rapide bout de code :
<?php
$sDirPath = './';
exec('find '.$sDirPath.' -name "*.txt"', $aOutputs, $bReturn);
if($bReturn){
  echo "\nOn a trouvé des fichiers texte : ";
  if(!empty($aOutputs)){
     foreach($aOutputs as $sFilePath){
        echo "\nFichier : $sFilePath";
     }
  }
}else{
echo "\nRien trouvé !";
}

0
vlmath Messages postés 794 Date d'inscription vendredi 20 octobre 2006 Statut Contributeur Dernière intervention 4 septembre 2011 160
Modifié par vlmath le 15/06/2011 à 18:47
C'est pas que je veux faire chier, mais on ne fait jamais ce genre de code !!!
Même si le risque d'injection est nul ici (ou presque), c'est mieux de ne pas utiliser les fonctions système pour la programmation.

Je cherche un ancien code, et je poste dans quelques minutes ...

Edit :

Finalement, j'ai trouvé un truc sur internet ...
<?php $folder=dir("./textfile");
 
while($folderEntry=$folder->read())
{
      echo $folderEntry."<br>";
}
 
$folder->close();
?>

Tu peux mettre une condition dans la boucle, ça marche très bien.

Tu peux aussi aller voir : https://www.php.net/manual/en/class.directoryiterator.php
0