Re: CLI/CGI -z command line options is broken
| From: | Niels Dossche | Date: | Sat, 15 Feb 2025 23:20:37 +0000 |
| Subject: | Re: CLI/CGI -z command line options is broken | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-126419@lists.php.net to get a copy of this message | ||
On 2/10/25 11:14 PM, Larry Garfield wrote:
> On Mon, Feb 10, 2025, at 3:24 PM, Niels Dossche wrote:
>> Hi internals
>>
>> We received a bug report (https://github.com/php/php-src/issues/17740)
>> that the
-z command line option for CLI/CGI doesn't
>> actually work.
>> This option is supposed to load a zend extension using a command line
>> argument.
>> However, it turns out that the extension doesn't actually load: PHP
>> will claim that the extension's loaded (in some places), but in reality
>> it never loaded properly.
>> I did an analysis of why this is happening in that GitHub thread, and a
>> clean solution isn't straight-forward.
>> Christoph figured out that this option has been broken since at least
>> PHP 5.5, a long time.
>> As passing -d zend_extension=foo on the command line is
>> already a
>> suitable replacement, we'd like to just remove the -z
>> option in PHP
>> 8.5 instead of fixing it.
>>
>> Are there any objections against this? Please let us know.
>>
>> Kind regards
>> Niels
>
> Seems reasonable to me. Perhaps update the -d help text accordingly, if needed?
>
> --Larry Garfield
Hi
Just to clarify: the -d option just sets an ini option.
One idea could be to make -z print out a message telling the user to use "-d
zend_extension=...". That would make the transition more "gradual".
OTOH this didn't work for ages so nobody realistically relies on this option.
Kind regards
Niels