error reporting
Martin aus Wien
- php
0 dedlfix
0 Martin aus Wien0 dedlfix
0 Der Martin
0 wahsaga
Hallo zusammen,
kann das sein, dass mein ISP PHP so konfiguriert hat, dass
error_reporting(E_ALL ^ E_NOTICE);
keine Wirkung hat und auf jeden Fall Notices erscheinen, wenn PHP das für nötig hält?
Oder mach ich was falsch? PHP 4.3.11, display_errors: On, error_reporting: 81, html_errors: On;
Und wenn ich schon dabei bin: Kann ich irgendwie erreichen, dass mir PHP Parse Errors anzeigt, wenn der ISP das anscheinend ausgeschaltet hat? Ich krieg immer nur weiße Seiten, wenn ich mal ein Semikolon vergessen habe.
Gruß und Dank
Martin
echo $begrüßung;
error_reporting(E_ALL ^ E_NOTICE);
Oder mach ich was falsch? PHP 4.3.11, display_errors: On, error_reporting: 81, html_errors: On;
Du rechnest falsch. Für E_ALL ohne E_NOTICE musst du E_ALL AND NOT E_NOTICE rechnen und nicht E_ALL NOT E_NOTICE. Als Ergebnis sollte dann 2039 rauskommen.
echo "$verabschiedung $name";
Du rechnest falsch. Für E_ALL ohne E_NOTICE musst du E_ALL AND NOT E_NOTICE rechnen und nicht E_ALL NOT E_NOTICE. Als Ergebnis sollte dann 2039 rauskommen.
Nanu?
// Report all errors except E_NOTICE
// This is the default value set in php.ini
error_reporting(E_ALL ^ E_NOTICE);
http://at.php.net/manual/en/function.error-reporting.php
Gruß
Martin
echo $begrüßung;
Du rechnest falsch. Für E_ALL ohne E_NOTICE musst du E_ALL AND NOT E_NOTICE rechnen und nicht E_ALL NOT E_NOTICE. Als Ergebnis sollte dann 2039 rauskommen.
Nanu?
// Report all errors except E_NOTICE
// This is the default value set in php.ini
error_reporting(E_ALL ^ E_NOTICE);http://at.php.net/manual/en/function.error-reporting.php
'tschuldigung, Irrtum meinerseits. ^ steht nicht für NOT sondern für XOR.
E_ALL = 0111 1111 1111 = 2047
E_NOTICE = 0000 0000 1000 = 8
XOR = 0111 1111 0111 = 2039
81 = 0000 0101 0001 = E_ERROR,E_CORE_ERROR,E_COMPILE_ERROR
Das ^ hätte also doch funktionieren sollen. Die 81 sieht sehr nach Vorsatz aus. Frage lieber mal deinen Provider.
echo "$verabschiedung $name";
Moin,
Du rechnest falsch. Für E_ALL ohne E_NOTICE musst du E_ALL AND NOT E_NOTICE rechnen und nicht E_ALL NOT E_NOTICE.
das Ergebnis ist aber dasselbe, solange im Ausgangswert (E_ALL) alle Bits gesetzt sind. Bei 2047 = 0x07FF ist das der Fall, darum führen beide Rechnungen zum gleichen Ergebnis.
Zahlenwerte:
E_ALL = 0x07FF
E_NOTICE = 0x0008
Rechenweg mit AND und NOT:
0x07FF & (~0x0008) =
0x07FF & 0xFFF7 = 0x07F7 = 2039 - passt also.
Rechenweg mit reinem XOR:
0x07FF ^ 0x0008 = 0x07F7 = 2039 - passt auch. qed.
Als Ergebnis sollte dann 2039 rauskommen.
Das tut es auch. :-)
Schönen Tag noch,
Martin
hi,
Kann ich irgendwie erreichen, dass mir PHP Parse Errors anzeigt, wenn der ISP das anscheinend ausgeschaltet hat? Ich krieg immer nur weiße Seiten, wenn ich mal ein Semikolon vergessen habe.
Du entwickelst doch nicht etwa auf einem Live-System?
gruß,
wahsaga
Du entwickelst doch nicht etwa auf einem Live-System?
Ehrlich gesagt, bei kleineren Adaptionen schon.
M.