View Issue Details

IDProjectCategoryView StatusLast Update
0000264XdebugUncategorizedpublic2021-03-17 18:10
Reporterywarnier Assigned Toderick  
PrioritynormalSeveritytweakReproducibilityN/A
Status resolvedResolutionno change required 
Summary0000264: Overload opcodes for isset(), empty(), ...
Description

Following a discussion on the mailing-list (see additional info), I am filing this feature request for post-2.0.0 to try and overload the opcodes of functions like isset() and empty(), to allow tracking them as well.

In the meantime, if isset() needs to be tracked, a slow and dirty hack is to wrap isset() into a homemade function myisset($var){return isset($var);}

The tracing of these calls could also become very noisy, so maybe it would be good to have a tracing option just for this.

Additional Information

The mailing-list discussion leading to this feature request.

On Thu, 3 May 2007, Yannick Warnier wrote:

Le jeudi 03 mai 2007 à 09:05 +0200, Derick Rethans a écrit :

On Wed, 2 May 2007, Sean Coates wrote:

Yannick Warnier wrote:

Hello,

I'm using xdebug 2.0.0 RC3. Is there a reason why calls to isset() and
empty() are not reported in traces?

I suspect for the same reason that instanceof and == are not shown in
traces (they're not actual functions).

That is correct, isset() and empty() are language constructs in PHP.

OK, thanks to both.
I suppose the classic way of getting around that (if needs be) is to
write a wrapper function like
function myisset($var){return isset($var);}
which I did and it worked fine (but you have to replace all the isset()
calls by myisset() calls in the script that worries you).

Another possibility would be that I overload those opcodes (if possible)
and expose them as function calls. I am not sure how possible this is
though. Feel free to file a feature request at http://bugs.xdebug.org so
that I can have a look at it for after 2.0 has been released.

regards,
Derick

TagsNo tags attached.
Operating System
PHP Version5.1.6

Activities

derick

2016-12-13 21:42

administrator   ~0004059

I might want to implement this, but it's not high on my list of things to do.

derick

2021-03-17 09:23

administrator   ~0005743

Is this issue still relevant to you?

ywarnier

2021-03-17 17:54

reporter   ~0005797

Hi Derick,

Great to see you've had some time to look into this!
As you can imagine, it's not really relevant to me anymore (I'm no longer using Xdebug directly), so feel free to drop it.
I just want to take the opportunity to thank you for your work for Xdebug and PHP. We met in person in Brussels last year (I asked you about the half-hour timezones in the date extension) but I didn't remember this issue.

Cheers!

derick

2021-03-17 18:10

administrator   ~0005798

You're welcome! I'll be closing this out then.

cheers,
Derick

Issue History

Date Modified Username Field Change
2007-05-03 18:50 ywarnier New Issue
2016-12-13 21:42 derick Status new => acknowledged
2016-12-13 21:42 derick Note Added: 0004059
2020-03-12 16:46 derick Category Feature/Change request => Uncategorized
2021-03-17 09:23 derick Assigned To => derick
2021-03-17 09:23 derick Status acknowledged => feedback
2021-03-17 09:23 derick Note Added: 0005743
2021-03-17 17:54 ywarnier Note Added: 0005797
2021-03-17 17:54 ywarnier Status feedback => assigned
2021-03-17 18:10 derick Status assigned => resolved
2021-03-17 18:10 derick Resolution open => no change required
2021-03-17 18:10 derick Note Added: 0005798