当前位置: 动力学知识库 > 问答 > 编程问答 >

PHP casting array to object

问题描述:

Possible Duplicate:

Casing an Array with Numeric Keys as an Object

I made a casting from array to object and I'm confused:

$arr = range(1,3);

$obj = (object) $arr;

var_dump($obj)

object(stdClass)#2 (5) {

[0]=>

int(1)

[1]=>

int(2)

[2]=>

int(3)

}

The question is: How to access the object attributes in this case? $obj->0 causes syntax error.

网友答案:

You can't access these object properties unless you cast back to an array. Period. If you have to do this for some reason, set the array keys to something else.

网友答案:

In this case the only thing I can think is to access properties using a foreach like this:

foreach($obj as $key => $value)
   var_dump("$key => $value");

but of course this won't solve the base problem.

网友答案:

It appears that the ArrayObject class can access the properties

$a = new ArrayObject($obj);
echo $a[0];
分享给朋友:
您可能感兴趣的文章:
随机阅读: