ID: 47402 Updated by: [email protected] Reported By: [email protected] -Status: Open +Status: Assigned Bug Type: Scripting Engine problem PHP Version: 5.3.0beta1 -Assigned To: +Assigned To: dmitry
Previous Comments: ------------------------------------------------------------------------ [2009-02-16 10:33:00] [email protected] Description: ------------ Depending on the context and the callback, call_user_func didn't propagate $this in 5_2. It now does in 5_3. Not sure which one is more correct, but there is definitely a potential BC break here. Reproduce code: --------------- <?php class A { public function test() { B::foo(); call_user_func(array("B", "foo")); } } class B extends A { public function foo() { var_dump($this); } } $b = new B; $b->test(); ?> Expected result: ---------------- // 5_2's output object(B)#1 (0) { } NULL Actual result: -------------- // 5_3's output object(B)#1 (0) { } object(B)#1 (0) { } ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=47402&edit=1
