newby wrote:Warum geht das nicht?
Also technisch ist das recht einfach anhand des Manuals erklärt:
newby wrote:jetzt überschreibe ich die datei mit fwrite($dz, $variable);!
Schauen wir uns mal das Manual an:
PHP-Manual wrote:int fwrite ( resource $handle, string $string [, int $length] )
fwrite() erwartet als 2. Parameter also einen String. Jetzt die Frage, wie kommt bei dir $variable zu seinem Inhalt? Das ist hier:
newby wrote:Die Datei lese ich dann mit $variable = file($pfad); aus!
Schauen wir uns mal das Manual an:
PHP-Manual wrote:array file ( string $filename [, int $use_include_path [, resource $context]] )
Also enhält $variable also keinen String wie es fwrite() erwartet, sondern ein Array (auch wenn ein Array natürlich wiederum mehrere Strings enthalten kann, in seinen Keys).
in der textdatei steht dann aber immer nur 'Array'.
Du hast also ein (komplettes) Array direkt einem String zugewiesen, PHP führt hier dann eine automatische Typekonvertierung durch. Was das Konvertieren zu einem String angeht, steht im Manual folgendes:
PHP-Manual wrote:Arrays werden immer in den String "Array" umgewandelt. Sie können also den Inhalt eines Arrays nicht mit echo() oder print() ausgeben, um zu sehen, was es enthält. Um ein Element anzuschauen, benötigen Sie etwas in der Art echo $arr['foo']. Siehe weiter unten für Hinweise zur Ausgabe/Ansicht des kompletten Inhalts.
(print, echo erwarten wie fwrite einen String den sie ausgeben können)