Edit report at https://bugs.php.net/bug.php?id=64239&edit=1
ID: 64239
Updated by: laruence@php.net
Reported by: kusmierz at o2 dot pl
Summary: Debug backtrace changed behavior since 5.4.10 or
5.4.11
Status: Open
Type: Bug
Package: *General Issues
Operating System: Ubuntu,Debian,Windows
PHP Version: 5.4.11
-Assigned To:
+Assigned To: dmitry
Block user comment: N
Private report: N
New Comment:
seems due to the new implemention of trait, not only debug_backtrace, I think the
reflection is also affected.
dmitry, do you think this should be fixed?
thanks
Previous Comments:
------------------------------------------------------------------------
[2013-02-18 20:48:20] kusmierz at o2 dot pl
Description:
------------
The debug_backtrace behavior has been changed since 5.4.9. Previously first method
in backtrace array was an alias name (Bmethod in my example) which seems to be ok
as only one possibility to check name of trait's aliased method name (see also
#61033). Now it returns trait's method name (t2method), which is incorrect in my
mind - I can't now check which method was originally called.
Test script:
---------------
class A {
use T1;
public function test() { $this->backtrace(); }
}
class B {
use T2 { t2method as Bmethod; }
}
trait T1 {
protected function backtrace() {
$b = new B();
$b->Bmethod();
}
}
trait T2 {
public function t2method() {
var_dump(debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 1));
}
}
$a = new A(); $a->test();
Expected result:
----------------
// php 5.4.9
array(1) {
[0]=>
array(5) {
["file"]=>
string(24) "/home/adam/test/test.php"
["line"]=>
int(25)
["function"]=>
string(7) "Bmethod" // OK;
["class"]=>
string(1) "B"
["type"]=>
string(2) "->"
}
}
Actual result:
--------------
// php 5.4.11
array(1) {
[0] =>
array(5) {
'file' =>
string(19) "/home/adam/test.php"
'line' =>
int(25)
'function' =>
string(8) "t2method" // !
'class' =>
string(1) "B"
'type' =>
string(2) "->"
}
}
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=64239&edit=1