My array
$arr = array(
"name" => "Prakash",
"tall" => "maybe",
"nick_names" => array ("p", "b", "bee", "prak", "new_names" => array("short_name" => "sn", "long_name" => "ln"))
);
我希望能够创建一个对象,从中可以通过属性访问值。
例如
$obj->name // "PRAKASH"
$obj->nick_names // array("p", "b", "bee", "prak", "new_names" => (object))
我怎么能得到这个?
我似乎能够通过以下方式完成我需要的
$obj = json_decode(json_encode($arr));
但显然这不是正确的做法。
谢谢。
你可以把它投射到一个stdClass
$obj = (stdClass) $arr;
请注意,在PHP中,数组在任何可以想象的方式上都远远优于stdClass
。
- 更好的性能
- 更好的横移能力
- 更好的可读性(海事组织)