unverständliches Verhalten - PHP-Bug?

Hallo, Wissende!

Ich hatte die letzten Tage ein Phänomen beobachtet, hinter dessen Lösung ich heute gekommen bin, das ich aber nicht verstehe:

Ich hatte auf einer (Include-)Seite anfangs festen Text, dann einen Abfrage-Teil und zum Schluss noch mal festen Text.
Wie ich heute heraus fand, hatte ich mich bei der if-Abfrage vertippt und statt des Vergleiches (==) eine Zuweisung (=) gemacht. Dass mir der Textteil, der in der „falschen“ Abfrage steht, nicht angezeigt wird, wäre mir ja verständlich. Aber wieso wird die gesamte Seite nicht angezeigt? Handelt es sich hier um einen Bug von PHP?
Immerhin habe ich keine Fehlermeldung oder Warnung erhalten. Oder sind bei dem PHP-Server irgendwelche Meldungen abgeschaltet? Wenn ja, wie kann ich das (z.B. mit phpinfo() ) erkennen?

Vielen Dank im Voraus und einen guten Start ins neue Jahr!

Viele Grüße

Thomas

Ich hatte auf einer (Include-)Seite anfangs festen Text, dann
einen Abfrage-Teil und zum Schluss noch mal festen Text.
Wie ich heute heraus fand, hatte ich mich bei der if-Abfrage
vertippt und statt des Vergleiches (==) eine Zuweisung (=)
gemacht. Dass mir der Textteil, der in der „falschen“ Abfrage
steht, nicht angezeigt wird, wäre mir ja verständlich. Aber
wieso wird die gesamte Seite nicht angezeigt? Handelt es sich
hier um einen Bug von PHP?

sicher nicht in einem if. php ist mittlerweile schon ein wenig gereift.
man koennte den fehler ja mal eingrenzt, indem man das konstrukt auf das geruest reduziert und dann genau die anweisungen nachvollzieht.

Immerhin habe ich keine Fehlermeldung oder Warnung erhalten.
Oder sind bei dem PHP-Server irgendwelche Meldungen
abgeschaltet? Wenn ja, wie kann ich das (z.B. mit phpinfo() )
erkennen?

http://php.net/error_reporting

im zweifelsfalle in die erste zeile ein
error_reporting(E_ALL);

Servus,
ich wieß nicht ob das auf dich zutrifft, aber wenn man auf gewissen Freehostern (byethost [nicht als Werbung!] und Konsorten) entwickelst habe ich festgestellt, dass bei Fehlern einfach die ganze Seite nicht mehr angezeigt wird. Das heißt, evtl. mal den Host wechseln.
grtz
michi

Hallo, Michi!

Ja, genau nach dem Verhalten sieht es aus!
Allerdings kann ich den Hoster leider nicht wechseln. Ich entwickle die Seite für die Uni auf einem Uni-Server.

Viele Grüße

Thomas

Servus,
ich wieß nicht ob das auf dich zutrifft, aber wenn man auf
gewissen Freehostern (byethost [nicht als Werbung!] und
Konsorten) entwickelst habe ich festgestellt, dass bei Fehlern
einfach die ganze Seite nicht mehr angezeigt wird. Das heißt,
evtl. mal den Host wechseln.

Ja, genau nach dem Verhalten sieht es aus!
Allerdings kann ich den Hoster leider nicht wechseln. Ich
entwickle die Seite für die Uni auf einem Uni-Server.

zum wechseln gibt es keinen grund - wie ich schrieb, laesst sich die fehlerbehandlung zur laufzeit beeinflussen.
http://php.net/manual/de/errorfunc.configuration.php

hier nochmal zum testen ein erweitertes beispiel:

<?php ini_set("display_errors",1);<br />ini\_set("error\_reporting",E\_ALL);

echo FOO; //NOTICE
array\_search(1); //WARNING
nosuchfunc(); //FATAL