Register for your free account! | Forgot your password?

You last visited: Today at 19:02

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



PHP - Lesen etc.

Discussion on PHP - Lesen etc. within the Coding Tutorials forum part of the General Coding category.

Reply
 
Old   #1
 
Who dis?'s Avatar
 
elite*gold: 3
Join Date: Apr 2009
Posts: 3,899
Received Thanks: 1,807
PHP - Lesen etc.

Heyo,
heute will ich euch einmal zeigen, wie ihr mit PHP Textdateien erstellen, lesen und löschen könnt. Auf diese Weise habt ihr eine einfache kleine Datenbank geschaffen.

1. Erstellen einer neuen Textdatei

eine direkt Funktion zum Erstellen von Textdateien gibt es nicht, man muss etwas mogeln. Versucht man nämlich, eine scheinbar vorhandene Textdatei zu öffnen und diese existiert nicht, wird einfach eine neue erstellt!

PHP Code:
$filename "test.txt"
$file fopen($filename"a+"); 
Da die Datei test.txt nicht geöffnet werden kann (fopen), wird eine neue Textdatei namens test erstellt. Das Dateiattribut a+ generiert uns gleich eine les- und schreibbare Datei (mehr zu Dateiattributen )

2. In Textdatei schreiben

Nun haben wir unsere Textdatei ausgewählt und (falls nicht vorhanden) erstellt.
In diese geöffnete Datei können wir nun unseren Inhalt schreiben (fwrite)

PHP Code:
$filename "test.txt"
$file fopen($filename "a+"); 
fwrite($file "Lorem ipsum sit dolor amat..."); 
fclose($file); 
Natürlich ist es egal, was wir in die Datei schreiben, ggf. können wir dort auch Variablen einfügen ..

PHP Code:
$text "Lorem ipsum sit dolor amat... \n"
fwrite($file $text); 
Mit dem Escape-Code \n erzeugen wir nachfolgend eine neue Zeile / Zeilenumbruch (mehr zu Escape-Codes )
Mit fclose wird die Datei am Ende des Vorganges wieder geschlossen.

2.1 Möglichkeit: Datei direkt lesen

Die erste Möglichkeit, die uns PHP bietet um eine Datei zu lesen, ist readfile

PHP Code:
readfile("test.txt"); 
Hier wird uns nur der einfache, unformatierte Inhalt der Textdatei text.txt wiedergegeben.

2.2 Möglichkeit: Datei in ein Array speichern

Folgendes Script speichert den kompletten Inhalt der Textdatei in ein Array und gibt es so wieder. Nun wäre es auch möglich, jede beliebige Zeile der Textdatei auszugeben. Nehmen wir an, in unsere Textdatei steht folgendes:

Quote:
Paul ; 16 ; ; 25.08.2007
Stefanie ; 21 ; ; 16.04.2005
Rolf ; 17 ; ; 23.09.2004
Wir wollen nun alle Datensätze untereinander auslesen

PHP Code:
$filename "test.txt"
$array file($filename); 
for (
$i=0$icount($array); $i++) { echo $array[$x].'<br />'; } 
Mittels der Funktion file lesen wir den Inhalt der Textdatei aus und speichern diesen in eine Variable ($array). Die Funktion count zählt dann die Anzahl der Elemente innerhalb des Arrays (Achtung: man fängt hier bei Null an zu zählen!)

Hier geben wir nun mittels der for-Schleife alle Zeilen "so wie sie sind" fein säuberlich untereinander (<br />) aus.

Um nun eine bestimmte Zeile auszulesen, geben wir einfach die Zeilennummer -1 an.
Beispiel: Wir wollen die Daten von Stefanie. Diese sind in der zweiten Zeile abgespeichert, da wir aber von Null an beginnen zu zählen, lautet die Arraynummer von Stefanie 1

PHP Code:
$filename "test.txt"
$array file($filename); 
echo 
$array[1]; 
2.3 Möglichkeit: Dateiinhalte schön sortieren

Natürlich ist es auch möglich, unsere kleine Datenbank fein säuberlich auszugeben. Wir möchte die Daten der drei gespeicherten Benutzer in einer Tabelle anzeigen lassen

Code:
<table border=1 width="500" cellpadding="0" cellspacing="0"> 
  <tr> 
    <td width="50"><b>Nr.</b></td> 
    <td width="150"><b>Name</b></td> 
    <td width="50"><b>Alter</b></td> 
    <td width="150"><b>Homepage</b></td> 
    <td width="100"><b>Datum</b></td> 
  </tr>
Das ist unser Grundgerüst, unter welchem wir nachfolgend die Informationen ausgeben werden

PHP Code:
$filename "test.txt"
$array file($filename); 
  
for (
$i=0$i<count($array); $i++) { 
     
$array[$i] = explode(";" $array[$i]); 
     echo 
'<tr><td><b>'.($i+1).'</b></td>'
     for (
$a=0$a<4$a++) { echo '<td>'.$array[$i][$a].'</td>'; } 
     echo 
'</tr>'; } 
  
echo 
'</table>'
Ich gebe zu: das sieht etwas verwirrend aus!
Der Script-Anfang ist gleich dem obigen, wir speichern unseren Dateiinhalt in einen Array. Danach separieren wir wieder Zeile für Zeile mittels der for-Schleife.

Jetzt wirds knifflig: innerhalb der for-Schleife wird als erstes der Zeileninhalt aufgeschlüsselt. Wir haben die Informationen durch einen Strichpunkt getrennt. Diesen nutzen wir nun als Trennzeichen, um an jede Information einzeln ranzukommen. Dazu wird die Funktion explode genutzt. Diese Funktion erstellt uns wiederum ein Array und darum muss man hier besonders aufpassen: zwei Arrays, davon eines innerhalb des anderen, so genannte geschachtelte Arrays !!
Um die Übersicht etwas zu wahren, nummerieren wir unsere Ausgaben durch. Da wir aber bei Arrays wie gesagt bei Null anfangen zu zählen, müssen wir noch eine Eins hinzuaddieren, damit eine chronologisch richtige Abfolge entsteht.

Insgesamt haben wir vier Datensätze (Name, Alter, Website und Datum).
Wir geben also wieder mittels der for-Schleife diese Datensätze aus und schachteln sie in eine Tabellenspalte (<td>).



3. Neue Inhalte hinzufügen

.. und wie man neue Informationen der Datei hinzufügt, wisst ihr nun auch schon
Einfach Datei wieder öffnen (fopen) und den Inhalt einfügen (fwrite). Achtet darauf, dass ihr die Datensätze mit einem Trennzeichen verseht und am Ende einen Zeilenumbruch mittels \n erzwingt!

4. Textdatei löschen

Generell Dateien aller Art werden mit unlink gelöscht,

PHP Code:
unlink("test.txt"); 
So das wärs dann erstmal
Bei Fragen gilt wie immer: fragen!
Who dis? is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
10€ PSC´ *Lesen*
06/09/2010 - Metin2 Trading - 0 Replies
Ja, wie in der überschrift geb ich 10 € PSC für S3 Ich suche auf dem server EQ ODER ACC Wie gesagt gebe 10 € PSC :ich werde mich nicht mehr verarschen lassen deswegen wird der trade mit einen middleman gemacht oder einen der mmindestens i trader +5 hat
Lesen pls !
02/13/2010 - WarRock - 2 Replies
Pls close Frage hat sich beantwortet!
FBs lesen?
06/05/2009 - Metin2 Private Server - 4 Replies
Komischerweise kann ich keine FBs mehr lesen und weiß nicht warum. Die SKills sind schon M und FB ist es auch das richtige. Aber es geht nicht und ich weiß nicht warum. Das geht schon seit Tagen so.
ein fb lesen, aber verschwindet nicht beim lesen?!!??! Òo
01/03/2009 - Metin2 - 4 Replies
hi leute ich suche den fb bug wer interresiert ist sein fb bug gegen meine bugs zu tauschen: -handels bug -pm bug -biologen bug -schmied bug und stein einfüge bug wenn ihr wollt kann ich auch alle bugs tasuchen gg fb bug!!!!
mal was zu lesen
09/11/2008 - Flyff Private Server - 0 Replies
http://flyffwhy.webs.com/



All times are GMT +1. The time now is 19:03.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.