为SimpleXMLElement数组编写Foreach循环

2022-04-13 00:00:00 multidimensional-array php simplexml

我正在使用PHP5中的XPath来解析一个XML文档。我遇到的问题是编写一个foreach来正确显示以下数组:

XML文档示例

值1 值2

           $xmlfile = 'link_to_file.xml';                       
            $xmlRaw = file_get_contents($xmlfile);      
            $xml = new SimpleXMLElement($xmlRaw);
            $install_files = $xml->xpath('//files');
            foreach($install_files as $row)
            {
              echo $row['file'];
            }

//$row的var_ump提供以下

               array(1) {
                  [0]=>
                  object(SimpleXMLElement)#21 (2) {
                    ["file"]=>
                    string(12) "value 1"
                    ["folder"]=>
                    string(8) "value 2"
                  }
                }
理想情况下,我希望通过使用$row['file']$row['folder']获得该值。感谢您的帮助。


解决方案

数组中的项是SimpleXMLElement对象。您可以使用$object->property语法访问它们的properties。所以试试这个:

foreach ($array as $row) {
    echo $row->folder . $row->file;
}

相关文章