打破PHP中的多维数组

时间:2011-10-05 09:28:38

标签: php

我有以下多维数组:

Array ( [0] => stdClass Object ( [array] => Array ( [0] => 6112010651088 [1] => Bill [2] => Choice ) ) [1] => stdClass Object ( [array] => Array ( [0] => 6702015707081 [1] => test [2] => data2 ) ) ) 

如果使用

打破第一个数组
foreach ($point1 as $val)
{
print_r($val);
}

你得到:

stdClass Object ( [array] => Array ( [0] => 6112010651088 [1] => Bill [2] => Choice ) ) 
stdClass Object ( [array] => Array ( [0] => 6702015707081 [1] => test [2] => data2 ) ) 

所以基本上你有一个带有2个数组对象的数组,每个数据包含3个数据单元,我现在如何访问这个对象stdClass数组,如果我去$ val [0]而不是$ val我得到

Fatal error: Cannot use object of type stdClass as array 

3 个答案:

答案 0 :(得分:2)

foreach ($point1 as $val)
{
   echo $val->array[0].'<br/>';
}

将打印:

6112010651088
6702015707081

答案 1 :(得分:1)

你应该尝试:

$val->array[0]

答案 2 :(得分:0)

要引用对象中的属性,请使用->运算符。

您提供给我们的对象包含一个名为array的属性。因此,您将参考如下:

$val->array

这反过来包含更深层次的数组数据,您可以将其作为普通数组引用。

因此,为了引用此结构中更深层的数组数据,您可以按如下方式编写它:

$val->array[0]

希望有所帮助。