Page 1 sur 1
Comment ouvrir un fichier dont je connais pas le nom entier?
Posté : 04 avr. 2013, 20:11
par sugmados
Bonjour!
J'ai besoin en urgence d'une aide par rapport à un imppératif pour moi.
Au faite j'ai un script php prend dans un dossier un fichier de type txt qu'il ouvre, lit ligne par ligne, exécute un certain nombre d'instruction puis ferme le fichier
Maintenant au lieu d'un fichier dans le dossier il y aurait plusieurs dont le nom serais le même au début à la différence que ceux ci seront désormais précéder de la valeurs temps comme par exemple: test_04042013_822.txt
donc vu que mon script au départ ne saura exactement le nom des fichiers, je voudrais savoir s'il existe une fonction en php qui peux prendre en compte tous les fichiers dont les noms commences par "test" en tenant compte de la variable temps pour les exécuter un à un?
Merci......
Re: Comment ouvrir un fichier dont je connais pas le nom ent
Posté : 04 avr. 2013, 20:30
par sirakawa
Cette valeur de temps comme par exemple: test_04042013_822.txta été établie au moment de la création du fichier?
Comment la retrouver à l'exécution?
Maintenant si tous les fichiers commençant doivent être exécutés, ou si tous les fichiers d'un répertoire doivent être exécutésva voir dans les contributions de:
http://www.php.net/manual/fr/function.is-dir.phpchez John Doe
Re: Comment ouvrir un fichier dont je connais pas le nom ent
Posté : 04 avr. 2013, 22:07
par yann18
il est beaucoup plus facile de retrouver les noms des fichiers connaissant le répertoire dans lequel ils se trouvent.la fonction
scandir liste les fichiers et les répertoires dans un répertoire. Il suffit de passer en paramètre le repertoire contenant les fichiers à la fonction scandir.
$dir = 'tonRepertoire/';
$files1 = scandir($dir);
print_r($files1);
Re: Comment ouvrir un fichier dont je connais pas le nom ent
Posté : 04 avr. 2013, 23:12
par sugmados
Je m'explique.
- La banque dois me déposer chaque 5 minuite dans un dossier precis un fichier texte contenant des informations de translation bancaire.
- Mon script php rentre dans le dossier chaque une minuite pour charger le contenu du fichier dans ma base de données
- Au cas où la banque aura des problèmes de connexion internet, vu qu'il genere automatiquement par un script aussi le fichier texte et envoi sur mon serveur par ftp, il risque d’écraser à chaque 5 minuites le fichier générer avant car si le fichier porte le meme nom et que au bout de 5 minuite il na pas pu me l'envoyer, une autre opération de génération de fichier sera exécuter et va écraser le fichier existant.
- Alors la banque e propose de m'envoyer des fichiers avec des paramètre temps de création du fichier sans modifier le nom initial comme par exemple:test_date_heure
- Dans ce cas vu que au paravent mon script prenait un seul fichier avec le nom complet comme paramétré, je sais pas comment opérer pour prendre en compte séparément tous les fichiers commençant par test_ et les reverser dans ma base de données vu que le reste des paramétrés n'est pas connu au préalable par mon script.
Merci de m'aider svp...
Re: Comment ouvrir un fichier dont je connais pas le nom ent
Posté : 04 avr. 2013, 23:45
par moogli
fonction
glob+ un foreach pour le reste
ou utiliser
la classe DirectoryIterator
pour info tes paramètres de temps ne sont pas les notre ....
@+
Re: Comment ouvrir un fichier dont je connais pas le nom ent
Posté : 05 avr. 2013, 09:18
par sirakawa
Il suffit d'utiliser fileatime($nom_fic) de chaque fichier et de prendre le plus récent.
Sinon, si la partie temps du fichier est un timestamp, il suffit de les comparer (bête tri à bulle)