Einlesen von Daten aus Textdatei - Array Unterteilung
Dennis
- php
Hi @all in the Forum *g*
Ich bin gerade dabei mir ein Forum in PHP auf Textdatei-Basis zu schreiben.
Leider komme ich da nicht so wirklich weiter.
Folgendes Problem taucht auf:
$einlesen = file($dateiname.'.txt');
for($x=0;$x<count($einlesen);$x++){
echo $einlesen[$x];
}
Ich will jede Zeile der Textdatei ausgeben, eine Zeile ist immer ein Beitrag.
Jedoch wird nun logischerweise immer die erste Zeile (älteste) zuerst ausgegeben
und die neueste zuletzt. Eigentlich hätte ich es gerne andersrum?
Wie geht das? Bitte gebt mir Tipps!
Mein zweites Problem ist dieses:
Jede Zeile ist nun eine Variable in dem Array $einlesen. So weit so gut.
Nun will ich jede Zeile aber wieder aufteile, ich dachte da an:
explode("#",$einlesen[$x]); -- # ist mein Trennzeichen.
Ich dachte, das mit in die For Schleife inzubauen. Jedoch weiß ich jetzt nicht
genau, wie ich an das Zeug wieder ran komme.
Durch diese Konstruktion kriegt das Array &einlesen ja viele Unterrarays, für jede
Zeile ein Unterarry (zumidest ist das meine Absicht).
Jetzt kriege ich es aber nicht hin, so eine art For Schleife zu basteln, die für
jedes Unterrarray schreibt:
$ausgabe_name = $unterarray1[0];
$ausgabe_text = $unterarray1[1];
$ausgabe_ende = $unterarray1[2];
Und das eben für alle Unterarrays. Darauf hin will ich das ganze einfach ausgeben, mit
noch Ergänzungen wie <p> etc.
Wie geht das? Bin dankbar für jeden Hinweis.
MfG, Dennis.
Hi @all in the Forum *g*
Ich bin gerade dabei mir ein Forum in PHP auf Textdatei-Basis zu schreiben.
Leider komme ich da nicht so wirklich weiter.Folgendes Problem taucht auf:
$einlesen = file($dateiname.'.txt');
for($x=0;$x<count($einlesen);$x++){
echo $einlesen[$x];
}
wie wärs mit
for($x=count($einlesen);$x>=0;$x--)
Hi Gerhard
wie wärs mit
for($x=count($einlesen);$x>=0;$x--)
Danke, das klappt einfwandfrei.
Jedoch bin ich mit den Array immer noch nicht weitergekommen.
Weiß da vielleicht jemand noch was?
Habe ich mich verständlich genung ausgedrückt?
MfG, Dennis.
Hello Dennis,
überleg doch mal.
Du baust ein Forum auf der Basis einer Textdatei. Textdateien sind sequentielle Dateien mit variabler Satzlänge. Also muss man, um einen Satz der Datei bearbeiten zu können, sowieso die gesamte Datei einlesen.
Was spricht also dagegen, für Deine Datensätze gleich Arrays zu benutzen, und die zu einem Superarray zusammenzubauen und dann abzuspeichern? Bis zu zwei MByte macht das auch weiter keinerlei Probleme.
Das hat dann den Vorteil, dass Du auf jedes Feld jeden Satzes direkt zugreifen kannst und es verändern kannst. Das Array wird dann komplett wieder abgespeichert.
Die gewonnene Zeit nutzt Du für die Problematik des Dateisperrens (Locking). Mit der musst Du dich nämlich unbedingt noch auseinandersetzen.
Liebe Grüße aus http://www.braunschweig.de
Tom