O'Reilly logo

PHP 5 Kochbuch, Third Edition by Stephan Schmidt, Ulrich Speidel, Matthias Brusdeylins, Carsten Lucke, Adam Trachtenberg, David Sklar

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

21.16 Eine Datei an ihrem Platz ohne eine temporäre Datei ändern

Problem

Sie wollen eine Datei ändern, ohne die Änderungen in einer temporären Datei zwischenzuspeichern.

Lösung

Lesen Sie die Datei in den Speicher ein, führen Sie die Änderungen durch und schreiben Sie die Datei wieder. Öffnen Sie die Datei mit dem Modus r+ (rb+ unter Windows, falls notwendig) und korrigieren Sie nach dem Schreiben der Änderungen die Länge mit ftruncate():

// Datei zum Lesen und Schreiben öffnen. $fh = fopen('pickles.txt','r+') or die($php_errormsg); // Gesamte Datei in $s speichern. $s = fread($fh,filesize('pickles.txt')) or die($php_errormsg); // ... $s modifizieren ... // An den Dateianfang zurückspringen und das neue $s schreiben. rewind($fh); if (-1 == fwrite($fh,$s)) ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required