我正在使用数组为自定义Web应用程序创建数据结构树,但我发现很难访问树根中的嵌套数组
//this is the code i have created
$Root = array(
'car' => array(
'id' => '0009'
'driver' => 'david',
'color' => 'red'
)
'bus' => array(
'id' => '0010'
'driver' => 'alex',
'color' => 'green'
)
);
所以返回一个项目我必须这样做
$driver = $root['car']['driver'];
通过在'array()之前添加'(object)'将所有这些数组转换为对象将解决这样的问题:
$Root = (object)array(
'car' => (object)array(
'id' => '0009'
'driver' => 'david',
'color' => 'red'
)
'bus' => (object)array(
'id' => '0010'
'driver' => 'alex',
'color' => 'green'
)
);
所以现在我可以通过以下方式访问这些项目:
$driver = $root->car->driver;
现在的问题是,这种方式在为每个???
创建包含100个或更多项目的多个数组时会出现性能问题答案 0 :(得分:1)
糟糕的做法。为什么要将数组转换为对象?将它们用作数组。如果你想要对象,那么创建一个类文件,并使用对象,而不仅仅是将数组转换为对象。