Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2018 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Lecture de fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Lecture de fichier

n°2140976
san_
Posté le 06-05-2012 à 15:58:15  profilanswer
 

Bonjour,
Je cherche un moyen de lire un fichier en php avec une contrainte : que les premières lignes soient "analysées". Je m'explique :
 
Par exemple, mon fichier (.txt) contient ceci :

title: Ceci est mon titre
date: 06 mai 2012
Ceci est mon texte blabla blabla blabla blabla blabla ...


Maintenant, je voudrais que ce qu'il a après "title: " soit récupéré dans une variable, idem pour "date: " et idem pour le reste du fichier.
En gros au final, je veux récupérer une variable $titre, $date, $corpsdutexte.
J'ai pas mal cherché mais impossible de trouver autre chose que des sujets traitant de parse_ini... si quelqu'un a une idée :??:  
 
 
 
Pour info, voici les quelques lignes qui pour l'instant me permettent de simplement récupérer et afficher le contenu de chaque fichier .txt placés dans mon dossier "articles" :

Code :
  1. $directory = "./articles/";
  2.     $dir_handle = @opendir($directory) or die("Impossible d'ouvrir $directory" );
  3.     while ($file = readdir($dir_handle)) {
  4.     if(strpos($file, '.') == (int) 0 )
  5.         continue;
  6.         $filename = $directory.$file;
  7.         $fh = fopen($filename, 'r');
  8.         $theData = fread($fh, filesize($filename));
  9.         fclose($fh);
  10.         echo $theData;
  11.     }
  12.     closedir($dir_handle);


mood
Publicité
Posté le 06-05-2012 à 15:58:15  profilanswer
 

n°2140997
xaeon
Profil: TT
Posté le 06-05-2012 à 18:20:47  profilanswer
 

Le mieux serait de lire ton fichier ligne par ligne avec fgets (http://fr2.php.net/manual/fr/function.fgets.php)
 
Ensuite si ton fichier en entrée a une structure stable (champs, séparateurs), il te suffit de parser les lignes qui t'intéressent avec par exemple la fonction explode() ou substr().
 
explode te permet de spécifier un caractère de séparation (ici je pense au ':') et de spécifier en combien de sous chaines tu veux découper ta première chaine (soit ici 2 vu que tu veux récuperer tout ce qui se situe après le 1er ':')
http://fr2.php.net/manual/fr/function.explode.php
substr te permet de récuperer directement une sous chaine en spécifiant la position du 1er caractère de cette sous chaine.
http://fr2.php.net/manual/fr/function.substr.php
 
Bien entendu il existe d'autres méthodes, mais pour une approche assez simple, ces 2 méthodes peuvent faire l'affaire :)

n°2141003
san_
Posté le 06-05-2012 à 18:42:05  profilanswer
 

Merci beaucoup je vais explorer ça :jap:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Lecture de fichier

 

Sujets relatifs
Question sur lecture fichierexplication et lecture d'un fichier binaire(C3D)
pb liste chainée et lecture de fichier CCompilation parser XML pour intégration à un code C
Lecture et recopie d'une matrice depuis un fichier texteProblème de lecture d'un fichier avec fread
optimiser le temps de lecture d'un gros fichierContrôles lors de la lecture d'un fichier xml
[Shell] lecture fichier configurationlecture d'un fichier .txt et retourner un tableau et une variable P,sv
Plus de sujets relatifs à : Lecture de fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR