PHP Textdateien

 

Das Lesen und Schreiben in eine Textdatei kann in PHP mit einem einfachen Befehl umgesetzt werden: file_get_contents und file_put_contents

Datei lesen

file_get_contents("Textdatei.txt");

Datei schreiben

file_put_contents("Textdatei.txt","Text");

Variablen in eine Datei schreiben

Um Variablen in eine Datei zu schreiben gibt es mehrere Möglichkeiten. Folgendes Beispiel ist eine davon, mit Sicherheit aber nicht die Beste:

file_put_contents("values.txt",$variable."##".$wert."\n");
file_put_contents("values.txt",$variable."##".$wert."\n", FILE_APPEND);

Der Variablenname wird dabei vom Wert mit "##" getrennt, jede neue Zeile spiegelt eine neue Variable wieder.

Das Speichern der ersten Variable erfolgt ohne "FILE_APPEND", damit die Datei neu angelegt wird. Alle weiteren Variablen können mit FILE_APPEND in die Datei hinzugefügt werden. Da jede Variable in einer eigenen Zeile steht \n, dürfen die Variablen keine Zeilenumbrüche enthalten.

Variablen aus der Datei einlesen

$data=file_get_contents("values.txt");
$variables = explode("\n", $data); 
foreach ($variables as $variable) {
  $var = explode("##", $variable);
  if (!empty($var[0])){
    ${$var[0]}=$var[1];
    }
}

Durch ${$var[0]} wird eine Variable mit dem Namen der Variable $var[0] geladen, $var[1] ist der Inhalt der zuvor gespeicherten Variable.

Als Format für das Speichern der Variablen könnte auch JSON verwendet werden: json_encode und zum Auslesen: json_decode.

Variablen in JSON

Variablen im JSON-Format in eine Datei speichern

//Variablen definieren
$json = '
{
    "var1": "value",
	"var2": "value2",
	"var3": "value3"
}';
//in eine Datei speichern:
file_put_contents("values.txt",$json);

json_decode

Variablen aus der Datei lesen

//Datei laden
$json=file_get_contents("values.txt");
$obj = json_decode($json);
//einzelne Variable auslesen:
echo $obj->{'var1'};

json_encode

Folgendes Beispiel lädt die zuvor gespeicherte Datei, fügt eine zusätzliche Variable hinzu und speichert alle Variablen:

//Datei laden
$json=file_get_contents("values.txt");
$obj = json_decode($json);
//Variable hinzufügen:
$obj->{'var4'}="value4";
//$obj wieder zurück zu JSON
$json=json_encode($obj);
//und wieder in die Datei schreiben:
file_put_contents("values.txt",$json);

Ein Beispiel um Daten in einer JSON-Textdatei zu speichern, ist folgendes Skript:  Mähroboter-Steuerung Smartplug 

positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE für deine Bewertung!

Aktualisiert: 23.06.2016 von Bernhard |🔔 | Kommentare:1

PHP reguläre Ausdrücke Regex: preg_match, preg_match_all | PHP | eigene Funktionen in PHP

Top-Artikel in diesem Bereich


PHP UTF-8 Umlaute

Bei Problemen mit den Umlauten in PHP, liegt das meist an einer falschen Zeichenkodierung.


Regex, Überblick, Begriffe, Parameter, Grundlagen und Beispiele

Regex ist eine universelle Beschreibungssyntax um bestimmte Teile aus Zeichenketten zu prüfen oder zu filtern. Als Beispiel könnten mit Regex sehr einfach alle <h1>-Überschriften aus einem HTML-Quellcode herausgefiltert werden. Angefangen mit PHP, habe ich Regex später auch in PowerShell und JavaScript eingesetzt. Zugegeben, anfangs habe ich Beispiele aus dem Internet für meine Einsatzzwecke angepasst und diese nur teilweise verstanden, zumal die Regex-Syntax doch...


PHP Befehle: Funktionen auf einen Blick

Die verfügbaren PHP-Funktionen (Befehle) können mit der PHP-Funktion get_defined_functions(); aufgelistet werden.

Fragen / Kommentare


(sortiert nach Bewertung / Datum) [alle Kommentare(neueste zuerst)]

✍anonym
25.07.2017 15:12
User: Christian 
Ich suche ein Script, mit den ich die HeavyWeather Datendatei currdat.lst (Text) die mit aktuellen Daten 1x pro Min. erstellt wird, auslesen und darstellen kann.