phparraysmembers

How to access the members of this data in PHP?


Okay. Now I give up. I have been playing with this for hours.

How can I possibly access the values within the stdClass::__set_state section?

I tried var_export($data->parts); but all I get is

NULL


Solution

  • Is this variable declared the way you posted it? Like:

    $data = array(
              'headers' =>
                 array (
                 …
    

    In that case, I'm not quite sure how you can access 'headers' via $data->headers. It should be $data['headers'], because it is an array, not an object.

    Further down, stdClass::__set_state(array('headers' => …)) statically calls the method __set_state of the class stdClass. Whatever this method does I don't know, but only its return value will be assigned to the 'parts' => array(0 => ...) key.

    If OTOH what you're showing is the result of var_dump($data), then this is incorrect nonsense, since stdClass::__set_state() would never show up in a var_dump. Something is fishy either in your code or in what you posted and it's hard to say without seeing more of it.

    Disregard the above, var_export prints classes this funky way.

    $data['headers'] should do it for the first headers part. Further down, $data['parts'][0]->headers should do the trick.