1

私の配列

$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));

しかし、明らかにそれは正しいことではありません。

ありがとう。

4

1 に答える 1

2

You can cast it into an stdClass:

$obj = (stdClass) $arr;

Take note that in PHP an array is far superior to an stdClass in any thinkable way.

  • Better performance
  • Better traversing abilities
  • Better readability (IMO)
于 2012-08-10T20:34:21.947 に答える