#22844 [Bgs->Ver]: text boolean ini options set with -d do not work (on/off)
ID: 22844
Updated by: sniper@php.net
-Summary: errors not displayed if display_startup_error or
display_errors is set to ANY v
Reported By: gk at proliberty dot com
-Status: Bogus
+Status: Verified
Bug Type: CGI related
Operating System: linux RH 7.2
-PHP Version: 4CVS-2003-03-24 (stable)
+PHP Version: 4.3.2-RC
New Comment:
This is actually real bug:
# php -d display_errors=1 -r "f();" <-- this works
# php -d display_errors=On -r "f();" <-- this is same as setting it to
0
Previous Comments:
------------------------------------------------------------------------
[2003-03-24 05:00:47] sniper@php.net
Please do not submit the same bug more than once. An existing
bug report already describes this very problem. Even if you feel
that your issue is somewhat different, the resolution is likely
to be the same. Because of this, we hope you add your comments
to the existing bug instead.
Thank you for your interest in PHP.
No need for another report about same issue.
------------------------------------------------------------------------
[2003-03-24 04:55:07] gk at proliberty dot com
In my php.ini file, I have:
display_errors=On
display_startup_errors=On
In Bug #22796, I noted that display_startup_errors=On is required for
proper error display using -r option; however this is a separate
problem: errors not displayed if display_startup_error or
display_errors is set to ANY value, with ini_set() or on the command
line
I demonstrate below with -d switch:
[greg@p3 junk]$ php -d display_startup_errors=On -r "f();"
[greg@p3 junk]$ php -d display_startup_errors=Off -r "f();"
[greg@p3 junk]$ php -r "f();"
Fatal error: Call to undefined function: f() in Command line code on
line 1
[greg@p3 junk]$ php -d display_errors=Off -r "f();"
[greg@p3 junk]$ php -d display_errors=On -r "f();"
The same problem occurs if call ini_set() instead of using -d option:
#FILE: junk.php
<?php
ini_set("display_errors","On");
ini_set("display_startup_errors","On");
f();
?>
Now, if you use boolean value instead of On/Off, it appears that if
EITHER variable is set to 1, errors work but if EITHER is set to 0,
they don't:
[greg@p3 junk]$ php -d display_errors=0 -r "f();"
[greg@p3 junk]$ php -d display_errors=1 -r "f();"
Fatal error: Call to undefined function: f() in Command line code on
line 1
[greg@p3 junk]$ php -d display_errors=On -r "f();"
[greg@p3 junk]$ php -d display_startup_errors=1 -r "f();"
Fatal error: Call to undefined function: f() in Command line code on
line 1
[greg@p3 junk]$ php -d display_startup_errors=0 -r "f();"
[greg@p3 junk]$
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=22844&edit=1
Thread (8 messages)