Votre question

php: Lire la deuxieme ligne d'un fichier text

Tags :
  • Script
  • Programmation
Dernière réponse : dans Programmation
20 Mars 2006 17:30:11

Bien le bonjour a tous!!

voila depuis quelques temps, je cherche en php a lire la 2eme ligne d'un fichier *.txt (qui contient des données (la 1ere en contien d'autres)) voila! avec un grand merci!!! :jap: 

Autres pages sur : php lire deuxieme ligne fichier text

20 Mars 2006 18:19:36

Bof, c'est pas super propre, mais ça doit marcher :

  1. <?php
  2. // ouverture du fichier texte en mode "lecture seule"
  3. $ouvre=fopen("texte.txt","r");
  4. $i = 0;
  5. while ($i < 2)
  6. {
  7. // on recupère la ligne courante
  8. $temp = fgets($ouvre);
  9. $i++;
  10. }
  11. // fermeture du fichier
  12. fclose($ouvre);
  13. ?>


EDIT : pour en savoir plus :http://www.phpdebutant.org/article58.php
20 Mars 2006 19:55:08

merci bien pour le code mais pourais-tu rajouté des com' au code pour que je puisse l'adapter, car la je comprend pas bien :-? dsl :hello:  lol merci
Contenus similaires
20 Mars 2006 20:21:21

Pour un programmeur c'est assez simple mais comme j'étais un débutant autrefois c'est normale que je t'aide!
Bon la partie de ce code:
<?php
// ouverture du fichier texte en mode "lecture seule"

$ouvre=fopen("texte.txt","r");
$i = 0;
while ($i < 2)

La première ligne = nom du variable + la fonction + l'url(texte.txt) et le "r" qui veut dire lecture seul.
$i est un nom de variable, tu peut le changer pour mieu comprendre.
While est la fonction boucle. ($nom_du_variable<(inférieur à ) 2) . sa veut dire qu'on fait la boucle j'usqu'a 2 lignes.

deuxième partie du code:

{
// on recupère la ligne courante
$temp = fgets($ouvre);
$i++;
}

Pour cette partie tu ne peut changer que les nom de variable: $temps, $ouvre et $i mais attention, $temp est un nouveau variable mais tu peut le changer. Les deux autre tu les change ne fonction des noms de variable que tu a mis dans la première partie.

Troisième partie:

// fermeture du fichier
fclose($ouvre);
?>

fclose=fonction fermet ($ouvre)= le nom du variable "ouvrir" (regarde dans la première partie et change en fonction.

Tu peut changer le nom de ligne, le nom des variables mais le reste, non!

J'espère que j'ai été assez clair.
20 Mars 2006 20:29:45

Voici quelque exemple de code personalisé.
A j'y pense, y a un probleme, tu ne peut pas lire que la ligne 1! quand tu fait une boucle sa affiche la 1 ensuite la 2 mais pas seulement la 2!
Cependant si tu t'arrange tu peut t'organisez dans tes lignes.
Voici quelques exmple de script:
allez à la ligne 89:

<?php
// ouverture du fichier texte en mode "lecture seule"
$ouvre_le_fichier=fopen("titre_du_texte.txt","r");
$lignes = 0; //j'ai résolu, change cette ligne et met par exemple 89
while ($lignes <= 89) //égale ou inférieur à 89
{
// on recupère la ligne courante
$temp = fgets($ouvre_le_fichier);
$i++;
}
// fermeture du fichier
fclose($ouvre_le_fichier);
?>

Donc tu doit changer le nombre de "$lignes" par le numéro de la ligne.
20 Mars 2006 21:15:35

super! merci beaucoup pour ta réponce! je regarderais sa demain apres tete reposé :)  merci
4 Juin 2008 01:09:56

Sacrée boucle infinie ah_ah_ah, quel farceur... :ange: 
Histoire de passer un modeste coup de balais (deux ans plus tard, ok) :

Fonction ( à placer entre les balises <HEAD></HEAD> ) :

<?php
function AfficherLigne($Ligne)
{
// Fichier souhaité
$Cible = "lefichier.txt";
// Ouverture du fichier
$Fichier = @fopen($Cible, "r");
// Si le fichier existe et a pu être ouvert
if ($Fichier)
{
// Tant que $Actuelle n'équivaut pas à $Ligne,
// on boucle en incrémentant $Actuelle de 1

for ($Actuelle=1; $Actuelle <= $Ligne; $Actuelle++)
{
// Attribution de la ligne en cours à $Temporaire
// Tant que la limite définie ou la fin du fichier n'a pas été
// atteinte, la boucle est relancée et $Contenu mis à jour

$Temporaire = fgets($Fichier);
if (empty($Temporaire)) { break; }
else { $Contenu = $Temporaire; }
}
}
// Sinon si le fichier n'existe pas ou n'a pas pu être ouvert
else
{
// Attribution d'un message d'erreur à $Contenu
$Contenu = "Erreur d'ouverture de <em>$Cible</em>";
}
// Fermeture du fichier
@fclose($Fichier);
// Affichage de $Contenu
print $Contenu;
}
?>

Et appel de la fonction à placer sur la page en y indiquant la ligne voulue :

<?php AfficherLigne(12); ?>
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS