我有一个数组$ aMethods,其print_r输出为:
Array
(
[0] => Array
(
[pattern] =>
[return_media] => 1
[return_name] =>
)
)
我正在尝试使用以下代码访问'return_media':
$iReturnMedia = $aMethods[0]->return_media;
echo $iReturnMedia;
另外,当我尝试这个时:
$iReturnMedia = $aMethods[0]['return_media'];
我收到错误声明:不能在...中使用字符串偏移作为数组
但它不起作用,$ iReturnMedia回归空白。有人能告诉我这里我做错了吗?
编辑:$ aMethods在foreach循环中设置如下:
foreach ($aMethodList as $sMethodGroup => $aMethods) { //insert code from above }
答案 0 :(得分:3)
您需要使用:
$iReturnMedia = $aMethods[0]['return_media'];
操作->
用于访问对象属性。由于您只是处理嵌套数组,因此需要使用[]
索引它们。
答案 1 :(得分:0)
按键访问数组值。
$iReturnMedia = $aMethods[0]['return_media'];
echo $iReturnMedia;
答案 2 :(得分:0)
您访问它就好像它是数组中的对象一样,您可以这样做:
$iReturnMedia = $aMethods[0]['return_media'];
echo $iReturnMedia;
答案 3 :(得分:0)
试试这个,
$iReturnMedia = $aMethodList[$sMethodGroup][0]['return_media'];
echo $iReturnMedia;
尝试var_dump($aMethods)
。它将准确地给出该阵列的想法...
答案 4 :(得分:0)
在下面找到访问数组值的代码 -
foreach ($aMethodList as $sMethodGroup => $aMethods) {
echo $aMethods[0]['return_media'];
}