Re: CLI/CGI -z command line options is broken

From: 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 [email protected] 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


Thread (6 messages)

« previous php.internals (#126419) next »