Re: [PHP-DEV] argv/argc From: rasmus <email protected>
Date: 01/29/00

> > On Fri, 28 Jan 2000, Zeev Suraski wrote:
> > > It would in this specific case, but I think that if people expect
> > > argv/argc, they expect them to exist and be empty in case of an empty
> > > query.
> > >
> > > Any reason not to selectively turn argv/argc off by an INI directive?
> >
> > What about cgi version where argv/argc are supposed to come from the
> > command line arguments?
>
> It's never been like that. $argc/$argv always reflected the contents of
> the QUERY_STRING.

I am not sure I understand that statement. Obviously $argc and $argv are
set based on the command line args in the cgi version. Using PHP 3, look:

  #!./php -q
  <?
        echo $argv[1];
  ?>

$ ./t abc
abc

Works the same for PHP 4, so what do you mean it *always* reflects the
contents of the QUERY_STRING? I have no QUERY_STRING env variable set in
this case.

As for why we need the http://www.php.net/?blah URL. It is very handy to
be able to access "blah" directly via $argv[0]. Just having it set in the
symbol table to an empty value and needing to look through $GLOBALS or
$HTTP_GET_VARS is a hassle. This has worked since PHP 2, so changing this
default is going to break some sites, including one of mine. I don't mind
an ini option to turn it off to increase performance, but we can't just
drop this feature.

-Rasmus

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: php-dev-unsubscribe <email protected>
For additional commands, e-mail: php-dev-help <email protected>
To contact the list administrators, e-mail: php-list-admin <email protected>