我在访问数组中的索引1时遇到了问题。
我如何访问index 1
?
试图像这样访问。
$selection = $menu_selection->{1}->vl
但我显示未定义的偏移误差。任何人都可以帮助我。
Array
(
[1] => stdClass Object
(
[vl] => Array
(
[0] => 1
[1] => 2
)
[op] => Array
(
[0] => O
[1] => O
)
)
[189] => Array
(
[vl] => Array
(
[0] => 1
)
)
)
答案 0 :(得分:0)
从PHP 7.2开始,您可以这样做(代价高昂):
((object) $menu_selection)->{1}->v1;
如果获取价值的方式并不重要,那么它应该是:
$menu_selection[1]->v1;
答案 1 :(得分:0)
你犯了两个错误。
$selection = $menu_selection->{1}->vl
第一个错误是访问第一个数组位置,你必须做这样的事情$selection = $menu_selection[1]
。
第二个错误是使用->
,此表示法用于访问对象属性和调用对象函数。
要访问索引1,您可以执行以下操作:
$selection = $menu_selection[1]
要从数组1访问vl,请尝试:
$selection = $menu_selection[1]->vl
正如你在var_dump中看到的那样,$ menu_selection [1]是stdClass类型的对象,这就是你需要->
来访问vl属性的原因。