Edit report at http://bugs.php.net/bug.php?id=52495&edit=1
ID: 52495 Updated by: degeb...@php.net Reported by: php-bugs at thequod dot de Summary: "-d" not parsed when invoked via shebang -Status: Open +Status: Bogus Type: Bug Package: PHP options/info functions Operating System: Linux PHP Version: 5.3.3 Block user comment: N New Comment: . Previous Comments: ------------------------------------------------------------------------ [2010-07-30 09:45:59] php-bugs at thequod dot de Sorry, this is apparently a limitation of the shebang handling, where no argument splitting is performed. Therefore, this bug is invalid. But please get bug 52496 fixed, so this does not fail silently. ------------------------------------------------------------------------ [2010-07-30 08:47:48] php-bugs at thequod dot de Well, it's actually worse than that: "-d" cannot be used in a shebang line altogether. This fails also: #!/usr/bin/php -n -d date.timezone=Europe/Lisbon Workaround: # cat /usr/local/bin/php-noini /usr/bin/php -n -d Europe/Lisbon "$@" ------------------------------------------------------------------------ [2010-07-30 08:30:33] php-bugs at thequod dot de Description: ------------ The behavior of PHP when used via shebang line in a script is different from using it directly: # cat > ~/test.php #!/usr/bin/php -n -ddate.timezone=Europe/Lisbon <?php exit(42); # chmod +x ~/test.php # ~/test.php ; echo $? Usage: php [options] [-f] <file> [--] [args...] [...] -d foo[=bar] Define INI entry foo with value 'bar' [...] 0 However, when used directly from the command line, the space after "-d" appears to be optional: # php -n -ddate.timezone=Europe/Lisbon -r 'echo date("H:i");' 07:15 # php -n -d date.timezone=Europe/Lisbon -r 'echo date("H:i");' 07:15 Please make the invocation via shebang behave the same in this regard (accept "-dfoo=bar") ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/bug.php?id=52495&edit=1