Gesamte Datei lesen
Einlesen
file_get_contents ( string $filename ) //Return Type StringDatei zeilenweise verwenden
Öffnen
fopen ( string $filename , string $mode ) //Return Type resource bzw Stream$filename : ./Pfad/zur/Datei
$mode:
r : lesen
w: schreiben
a: anhängen
Lesen
fgets ( resource $handle ) //Return Type: StringLiest ab dem aktuellen Dateizeiger ($handle) eine Zeile aus der Datei und gibt den Text als Funktionswert zurück. Im Fehlerfall (z.B. Dateiende) wird false zurück geliefert.
Beispiel
$csv = fopen("Messwerte.csv", "r");
print '<table>';
while ($zeile = fgets($csv)) {
$line = explode(",", $zeile);
print '<tr>';
foreach ($line as $value) {
print "<td>$value</td>";
}
print "</tr>";
}
print "</table>";
fclose($csv);Schreiben
fputs ( resource $handle , string $string ) // Return Type intSchreibt ab dem aktuellen Dateizeiger ($handle) eine Zeile in die Datei. Im Fehlerfall (z.B. Dateiende) wird false zurück geliefert ansonsten die Anzahl der geschriebenen Bytes. Achtung! Das Zeilenende-Zeichen wird nicht automatisch eingefügt!
Beispiel
$csv = fopen("Messwerte.csv", "a");
$werte = $_GET['temperatur'] . ",";
$werte .= $_GET['wetterbeschreibung'] . ",";
$werte .= $_GET['messzeit'] . "\n";
print $werte;
fputs($csv, $werte);
fclose($csv);Schließen
fclose ( resource $handle )Beispiel
// Datei öffnen
$dateiname = "dateien/datei1.txt";
if (!$dateizeiger = fopen($dateiname, "r")) { //Fehlerbehandlung
print "Kann datei $dateiname nicht öffnen!";
exit;
}
// Datei zeilenweise lesen und ausgeben
while ($zeile = fgets($dateizeiger)) {
print("$zeile");
}
fclose($dateizeiger);In Datei schreiben
file_put_contents ( string $filename ,mixed $data )Die übergebenen Daten (meist ein String) werden in die Datei mit dem übergebenen $filename (rel. Pfad + Dateiname) geschrieben. Die zuvor enthaltenen Daten werden überschrieben.
CSV Dateien
Wie Datei zeilenweise verwenden
explode ( string $delimiter , string $string ) //Return Type ArrayLiefert ein Array aus Strings zurück. Der übergebene string wird in Teile geteilt. Das Trennzeichen wird in $delimiter übergeben.
implode ( string $glue , array $pieces ) //Return Type ArrayFügt alle Teile eines Arrays in einem String zusammen. Die einzelnen Teile werden durch das Zeichen $glue getrennt.