PHP Toleranzen
-
Hi!
Ich würd gern ein bisschen etwas über die PHP Toleranzen erfahren. Wenn ich zB. etwas wie...
session_set_cookie_params($_POST["cookieLifetime"], ...
...schreibe, und der Index garnicht vorhanden ist, ist das irgendwie problematisch? Wird dann automatisch NULL oder 0 genommen?
Und werden nicht bekannte Variablen bei der ersten Verwendung auch mit NULL initialisiert? Außerdem ist in PHP NULL != 0 ...Wo ist sowas dokumentiert?
Danke
-
Hallo,
dieses Problem wird im Log nur als Warnung aufgelistet (Warning: undefined index in ...). Es funktioniert, aber ist unschön. Besser du fragst es vorher ab:
if (isset($_POST['cookieLifetime'])) session_set_cookie_params($_POST["cookieLifetime"]); //, ... else session_set_cookie_params(0); //, ...
LG, Micha
-
Ja, weiß schon, nur das würd ich mir gerne ersparen... kommt nicht selten vor, so ein Konstrukt.
Wird da jetzt immer 0 genommen, wenn es kein gültiger Index ist?
-
session_set_cookie_params(@$_POST["cookieLifetime"]);
-
Intoleranz schrieb:
Ja, weiß schon, nur das würd ich mir gerne ersparen... kommt nicht selten vor, so ein Konstrukt.
Wird da jetzt immer 0 genommen, wenn es kein gültiger Index ist?Warum lagerst du das Codefragment dann nicht einfach in eine Funktion aus und rufst die immer auf? Viel sauberer...
-
Jo, @Shade, aber im release code setze ich error_reporting eh auf 0.
@nep, find ich nicht! Wegen so nem Schas ne Funktion, nene... Ich hab's gerne auf einem Blick.
-
Intoleranz schrieb:
Jo, @Shade, aber im release code setze ich error_reporting eh auf 0.
-
Shade Of Mine schrieb:
Intoleranz schrieb:
Jo, @Shade, aber im release code setze ich error_reporting eh auf 0.
ich schreib mir das in ne cfg und bei bedarf wird es ein oder ausgeschalten wobei ein eig. besser ist hehe
-
PHP-Fehlermeldungen sollten im produktiven Betrieb keinesfalls ausgegeben, aber natürlich protokolliert werden.
-
Ja klar, natürlich. Wenns beim kunden im einsatz ist natürlich nicht anzeigen
-
PRIEST schrieb:
Ja klar, natürlich. Wenns beim kunden im einsatz ist natürlich nicht anzeigen
nein.
fehler anzeigen: nur im testbetrieb
fehler loggen: IMMER
-
Shade Of Mine schrieb:
PRIEST schrieb:
Ja klar, natürlich. Wenns beim kunden im einsatz ist natürlich nicht anzeigen
nein.
fehler anzeigen: nur im testbetrieb
fehler loggen: IMMERhat auch niemand gesagt das es nicht geloggt wird, irgendwie hast du das jetzt alles wiederholt