Hallo,
if(!$stream=fopen($datei,"a"))
das ist völlig in Ordnung.
if($stream=fopen($datei,"a")==false)
Sollte doch eigentlich das gleiche sein oder?
Ich prüfe ob False ist wie oben.
Aber das klappt nicht, dann fängt komischerweise fwrite und fclose an zu meckern, wieso?
Die Rangfolge der Operatoren spielt dir hier einen Streich. Der Vergleich (Operator ==) wird zuerst ausgeführt, dann erst die Zuweisung. Deine Anweisung wird also so interpretiert:
* Führe fopen() aus und vergleiche das Ergebnis mit false
* weise das boolsche Ergebnis dieses Vergleichs (also true,
wenn fopen() false ergab, sonst false) der Variablen $stream zu
Wenn du den expliziten Vergleich mit false haben willst (wozu eigentlich?), musst du Klammern setzen:
if (($stream=fopen($datei,"a"))==false)
So long,
Martin
Paradox ist, wenn der Innenminister sich äußert und der Außenminister sich erinnert.