|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2001-05-07 20:30 UTC] jmoore@php.net
[2001-05-07 20:53 UTC] zeev@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Oct 27 11:00:01 2025 UTC |
PHP, when being run from the command line, has been mangling the command line arguments badly for some while. It would be nice if they mapped to the same usage as C programs. PHP4.04pl1 is particularly bad - argc is completely broken: Consider the script <? printf("%d\n", $argc); ?> Here's the output from php4.01, and then from php4.04pl1 $ php -f test.php 0 $ php -f test.php a 1 $ php -f test.php a b 2 $ php -f test.php a b c 3 $ /home/webapps/webserver/bin/php404pl1 -f test.php 2 $ /home/webapps/webserver/bin/php404pl1 -f test.php a 2 $ /home/webapps/webserver/bin/php404pl1 -f test.php a b 3 $ /home/webapps/webserver/bin/php404pl1 -f test.php a b c 4 As you can see, argc is never less than 2, and in fact is a value of 2 with zero args or one arg (bad bad bad!). Sort of important for us - we find PHP SO EASY to program in, that we actually use it as the language of choice, even for batch programming, when performance is not absolutely critical. But it sort of makes it tough to pass in cmd line arguments...