如何从数组中的数组返回数据

时间:2011-11-20 01:09:10

标签: php arrays multidimensional-array

我有以下从xml文件解析的数据,现在我在返回数据时遇到问题。如何从照片数组中的数组返回照片src数据。关于我做错了什么想法?

代码

$xml = simplexml_load_file($url);
$photo_url = $xml['photo']->src;

for ($i=0, $n=count($photo_url); $i<$n; ++$i) {
    echo $photo_url[$i].'<br>';
}

数据

["photo"]=>
  array(46) {
    [0]=>
    object(SimpleXMLElement)#2 (1) {
      ["@attributes"]=>
      array(6) {
        ["id"]=>
        string(5) "26001"
        ["src"]=>
        string(36) "1006416.jpg"
        ["thumb"]=>
        string(42) "1006416_thumb.jpg"
        ["title"]=>
        string(16) "album"
        ["subtitle"]=>
        string(6) "01.jpg"
        ["favorite"]=>
        string(0) ""
      }
    }
    [1]=>
    object(SimpleXMLElement)#3 (1) {
      ["@attributes"]=>
      array(6) {
        ["id"]=>
        string(5) "26001"
        ["src"]=>
        string(36) "1006417.jpg"
        ["thumb"]=>
        string(42) "1006417_thumb.jpg"
        ["title"]=>
        string(16) "album"
        ["subtitle"]=>
        string(6) "02.jpg"
        ["favorite"]=>
        string(0) ""
      }
    }

1 个答案:

答案 0 :(得分:1)

您应该使用SimpleXMLElement attributes方法,如下所示:

$xml = simplexml_load_file($url);
foreach( $xml as $xml_node)
{
    $attributes = $xml_node->attributes();
    echo 'Photo source: ' . $attributes['src'] . "\n";
}

Demo