Tom's Guide > Forum > Programmation > php: Lire la deuxieme ligne d'un fichier text
Mot :    Pseudo :           
 

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:

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

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

Code :
  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

Répondre à ouistiti22

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

Répondre à neb93

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.

Répondre à ah_ah_ah

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.

Répondre à ah_ah_ah

super! merci beaucoup pour ta réponce! je regarderais sa demain apres tete reposé :) merci

Répondre à neb93

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); ?>


Message édité par Rumores le 04-06-2008 à 01:22:59
Répondre à Rumores
Tom's Guide > Forum > Programmation > php: Lire la deuxieme ligne d'un fichier text
Aller à :

Il y a 1217 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens