Hi Tim

On 11/11/23 16:32, Tim Düsterhus wrote:
> Hi
> 
> On 11/7/23 20:32, Niels Dossche wrote:
>> I'm opening the discussion for my RFC "Improve callbacks in ext/dom and 
>> ext/xsl".
>> RFC link: https://wiki.php.net/rfc/improve_callbacks_dom_and_xsl
> 
> Some question that I believe are not answered:
> 
> 1.
> 
> $xpath->registerPhpFunctions([
>   "foo" => ...
> ]);
> 
> $xpath->registerPhpFunctions([
>   "foo" => ...
> ]);
> 
> Is this an error due to the duplicate definition or will the last 'foo' win?

The last 'foo' will win, such that you can override previous definitions.

> 
> 2.
> 
> $xpath->registerPhpFunctions([]);
> 
> Is this an error or a noop?
> 

This is a no-op, just like it is the case in current PHP versions.

> 3.
> 
> Would it make sense to deprecate passing a string as "Future Scope"? 
> Simplifying the method signature would also allow to simplify the 
> documentation in the long run and registering a string is trivially fixed by 
> adding square brackets.

Maybe, although I personally don't hate it that much.

> 
> In fact looking at the existing documentation at 
> https://www.php.net/manual/en/domxpath.registerphpfunctions.php, what's the 
> difference between 'php:function()' and 'php:functionString()'?

The difference is in the returned result.
php:functionString() will case the result to a string automatically for you, 
while php:function() just returns the result as-is.

> 
> Best regards
> Tim Düsterhus

Kind regards
Niels

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php

Reply via email to