Bestimmte Zeile aus Textdatei lesen?

Nucleus

Erfahrenes Mitglied
Weiß jemand wie man eine bestimmte zeile aus einer txt liest?

z.B:
Ich habe 7 namen:

Hansi
Rudi
Ludi
Chrisi
Bisi
Lola
Maxi

Und will jetzt zum z.B: Ludi herauslesen - Das is also die 3 Zeile - hmm wie könnte ich das am besten machen ?
Wäre nett wenn mir jemand helfen könnte

cya nucle
 
also eine möglich keit ist die funktion file()...die liest eine datei ein und gibt sie als array zurück.......dann müsstest du nur die datei einlesen und dann $array[2] ausgeben, dass würde dann der dritten zeile entsprechen.....denke mal, dass das aber nicht so sinnvoll, ist, wenn die datei groß ist......

dazu kannst du dir mal das hier ansehen....(mal wieder manual auf php.net:))



eine andere möglichkeit ist es, die datei zeile für zeile auszulesen und an der gewünschten stelle anzuhalten und sie auszugeben......

PHP:
$fd = fopen ("deine_datei.txt", "r");
  //öffnen eines einlese-stroms
$ziel = false;
$aktuelle_zeile = 1;
  //setzen der variablen
$zeile_die_ich_will = 15;
  //die zeile, die man auslesen will

  //jetzt springt man von zeile zu zeile, bis man an der gewollten angekommen ist, gibt diese aus
  //(echo...) und beendet die schleife durch $ziel = true;
while (!feof($fd)&&($ziel==false)) {
  if($aktuelle_zeile == $zeile_die_ich_will){
    $meine_zeile = fgets($fd, 1000);
    echo $meine_zeile;
    $ziel = true;
  }
  else{
    $aktueller_text = fgets($fd, 1000);
      //diese zeile musss ein, da sie den internen zeiger weitersetzt
  }
    $aktuelle_zeile++;
}
fclose ($fd);
  //schließen des datenstroms.....

hierzu siehe : das hier



beide möglichkeiten kann man leicht umbauen, um mehrere zeilen zu speichern, auszugeben oder so......

ich hoffe, das aht geholfen.....

//bad taste
 
cool danke schau ich ma gleich alles an hast ma echt geholfen thx echt super von dir .



THX THX mfg nucleus
 
Hab da auch was gecoded aber irgendwie funkt das noch nicht so wie ich will. Also er sucht in der textdatei die stelle die so aussieht
[1]dort bleibt er stehen und liest das aus das funkt aber wenn jetzt mehrere mit der [1] sind dann hat er schwierigkeiten es zu lesen - weiß jemand was ich da falsch gemavcht habe ?


<?php

$select = 1;
$fp = fopen("comment.txt","r");
while ($line = fgets($fp,4096)){//bis er die zeile hat
if (ereg("^\[[".$select."]",$line)){
$pieces = explode("#",$line);



echo "$pieces[0]";
echo "<br>";
echo "$pieces[1]";
echo "<br>";
echo "$pieces[2]";
echo "<br>";
echo "$pieces[3]";
echo "<br>";
echo "$pieces[4]";
echo "<br>";


}
}
fclose($fp);
echo "<br>";

?>

<form name="form1" method="post" action="danke.php?user=<? echo "$user"; ?>">
<p>
<input type="text" name="name">
</p>
<p>
<textarea name="text" cols="40" rows="3"></textarea>
<p>
<input type="submit" name="submit" value="Antworten">
</p>
</form>
 

Neue Beiträge

Zurück