View Issue Details

IDProjectCategoryView StatusLast Update
0000686XdebugStep Debuggingpublic2020-03-12 17:19
Reporternnmatveev Assigned To 
PrioritynormalSeverityfeatureReproducibilityalways
Status closedResolutionfixed 
Product Version2.1.0 
Fixed in Version2.3.3 
Summary0000686: Not possible to inspect SplObjectStorage instances with Xdebug
Description

Xdebug doesn't send children of SplObjectStorage instances.

Steps To Reproduce

<?php
$object1 = new stdClass();
$object1->someProperty = "o1";

$object2 = new stdClass();
$object2->someProperty = "o2";

$storage = new SplObjectStorage();
$storage->attach($object1);
$storage->attach($object2);

var_dump($storage);//breakpoint here

----from xdebug.log(stop at breakpoint)
<- context_get -i 10 -d 0 -c 0
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="context_get" transaction_id="10" context="0"><property name="object1" fullname="$object1" address="40162368" type="object" classname="stdClass" children="1" numchildren="1"></property><property name="object2" fullname="$object2" address="40169216" type="object" classname="stdClass" children="1" numchildren="1"></property><property name="storage" fullname="$storage" address="40169480" type="object" classname="SplObjectStorage" children="0" numchildren="0"></property></response>

Additional Information

http://youtrack.jetbrains.net/issue/WI-5268

TagsNo tags attached.
Operating System
PHP Version5.3.6

Relationships

has duplicate 0000864 closedderick No Attributes are shown if an Object extends ArrayIterator 

Activities

derick

2011-04-30 20:42

administrator   ~0001732

Hmm, this is because objects of the class SplObjectStorage are not user land PHP objects but special super duper internal ones. A similar situation will happen with many other internal PHP classes. I'll have a look at this, but marking this as a feature request.

nnmatveev

2011-05-01 22:16

reporter   ~0001737

Thanks!

nnmatveev

2011-11-01 17:52

reporter   ~0001852

The same for the 'DOMElement' class. See http://youtrack.jetbrains.net/issue/WI-8160

nnmatveev

2011-12-16 13:50

reporter   ~0001883

The same for the 'mysqli' class. See http://youtrack.jetbrains.net/issue/WI-8096

derick

2011-12-16 13:55

administrator   ~0001885

It will be for almost all internal PHP classes, so no need to mention it for each of them.

nnmatveev

2011-12-19 05:09

reporter   ~0001890

OK

mfettig

2015-03-05 16:38

reporter   ~0003038

Has any progress been made towards this request? I'm currently encountering the same behavior using PHP 5.6.6 and Xdebug 2.3.1 and it would be extremely helpful to be able to debug internal PHP classes

maab

2015-04-09 10:45

reporter   ~0003059

+1

uresu

2015-05-22 13:51

reporter   ~0003087

Hi Derick, I can see this one is really old. Is it possible/do you plan to do anything? Can I help at all?

derick

2015-06-13 23:43

administrator   ~0003116

Fixed for Xdebug 2.3.3 and 3.0dev