Hello Scott,

  actually it was a bug. We, sorry I, did not spot this in earlier versions.
Now saying you rely on a bug in PHP 5 to be able to execute PHP 4 code
simply does not work.

marcus

Wednesday, January 30, 2008, 11:48:50 AM, you wrote:

> Hi all,

> Static callbacks behave differently between 5.2 and 5.3, I recently 
> noticed this when trying to install PEAR, it printed a warning each time 
> call_user_func and call_user_func_array was used.

> After some tracking down it seems like the callback option for 
> zend_parse_parameters was backported from 6 but the strict check was 
> left as is.

> <?php
> class MyClass { function test($var) { echo "$var\n"; } }
> MyClass::Test('regular');
> call_user_func(array('MyClass', 'test'), 'callback');
?>>

> The prints E_STRICT errors in PHP 5.2 but in 5.3 you get a single 
> E_STRICT error followed by a warning for call_user_func.

> You can resolve this by adding the static keyword to the method 
> declaration but regardless it's inconsistent as stands. I think the 
> strict flag needs to be removed for 5.3.

> Patch is attached to resolve the issue.

> Scott



Best regards,
 Marcus

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

Reply via email to