Hi internals,

following recently added alternative to `token_get_all()` in form of a
dedicated class `PhpToken`
I've made a similar proposal for collecting stack traces by introducing
`StackFrame::getTrace()`
and `StackFrame` which replaces array with keys and values known from
`debug_backtrace()`.

To compete with easier adoption `StackFrame` implements `ArrayAccess`
giving identical API
to `debug_backtrace()`.

A test script with deep recursion up to 1M frames uses 50% less memory than
`debug_backtrace()`.

The RFC is described here https://wiki.php.net/rfc/stack-frame-class
It includes implementation of PoC and tests.

Cheers,
Michał Marcin Brzuchalski

Reply via email to