Bug #55648 [Com]: CLI: the ini directives passed with -d to the CLI do not parse constants.
Edit report at https://bugs.php.net/bug.php?id=55648&edit=1
ID: 55648
Comment by: nikic@php.net
Reported by: yaauie@php.net
Summary: CLI: the ini directives passed with -d to the CLI do
not parse constants.
Status: Open
Type: Bug
Package: CGI/CLI related
Operating System: Windows 7
PHP Version: 5.4SVN-2011-09-06 (snap)
Block user comment: N
Private report: N
New Comment:
Cannot reproduce on 5.4.0 Beta 1 on Windows 7:
C:\php-5.4.0beta1>php.exe -d "error_reporting=E_ALL" -r "var_dump(error_reportin
g());"
int(32767)
C:\php-5.4.0beta1>php.exe -d "error_reporting=E_ALL&~E_NOTICE" -r
"var_dump(erro
r_reporting());"
int(32759)
Output stays same if I add -n option.
Previous Comments:
------------------------------------------------------------------------
[2011-09-08 18:49:40] yaauie@php.net
Description:
------------
In posix-based systems, you can set error_reporting from the command line using
the constants, but on Windows this always fails and results in an
error_reporting() value of zero.
This affects test automation, where these directives may be supplied in the INI
section of a phpt test case. run-tests.php runs these tests by passing their ini-
directives as -d. While run-tests.php explicitly sets the numeric value of these
constants in the base ini, they do not get explicitly set in phpt-specific
overrides. Thus, output may be different than expected.
Test script:
---------------
php.exe -n -d "error_reporting=E_ALL" -r "var_dump(error_reporting());"
Expected result:
----------------
int(32767)
# or similar
Actual result:
--------------
int(0)
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=55648&edit=1
Thread (4 messages)