[EMAIL PROTECTED] wrote: > ID: 20887 > Updated by: [EMAIL PROTECTED] > Reported By: [EMAIL PROTECTED] > -Status: Bogus > +Status: Critical > -Bug Type: Unknown/Other Function > +Bug Type: Scripting Engine problem > Operating System: Mandrqke Linux 9.0 > -PHP Version: 4.3.0RC2 > +PHP Version: 4.3.0-dev > New Comment: > > I just got bitten by this myself too. But it doesn't happen > with CLI for me, only with the Apache module.
Here (Linux) it happens with CLI if I start php without a path and have a directory named "php" with a php-cli.ini. In main/php_ini.c, the location of the executable is used to search the php-*.ini: if (sapi_module.executable_location) { binary_location = estrdup(sapi_module.executable_location); } else { binary_location = NULL; } In php_cli.c, the executable_location is guessed [1] from argv[0], which can be almost anything (although it happens to be the executable location sometimes): cli_sapi_module.executable_location = argv[0]; But do we really want to search the path of the executable for an ini file? At least on Unix, that's a rather uncommon place for ini files. Since this feature (searching the executable path) has not been advertised anywhere yet, I suggest that it is removed at least for the Unix versions (I can't speak for the other versions). The builtin path to php*.ini, the PHPRC variable and the -c switch are quite enough places to look for ini files, IMHO. Regards... Michael [1]: see the entry in the Unix FAQ about argv[0]: <http://www.erlenstar.demon.co.uk/unix/faq_2.html#SEC23> -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, visit: http://www.php.net/unsub.php