微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – foreach和simplexml

这是我的xml文件

<?xml version="1.0" encoding="utf-8" ?> 
<documentElement>
    <rows>
        <row>
            <column>1</column>
            <column>David</column>
            <column>Johnson</column>
        </row>
        <row>
            <column>2</column>
            <column>Jack</column>
            <column>Nixon</column>
        </row>
    </rows>
</documentElement>

我想循环遍历行并将它们添加到数组中.我将它传递给simplexml然后循环遍历这些对象,但是无法做到:

$xml->rows
$xml->rows->row
$xml->row
$xml->column

我该怎么办?

谢谢.

解决方法:

这实际上是一个更基本的例子:

$sxml = simplexml_load_string($xml);

foreach($sxml->rows->row as $name => $row)
{
    echo $name, ': ', var_dump($row);
}

这会给你以下输出

row: object(SimpleXMLElement)#3 (1) {
  ["column"]=>
  array(3) {
    [0]=>
    string(1) "1"
    [1]=>
    string(5) "David"
    [2]=>
    string(7) "Johnson"
  }
}
row: object(SimpleXMLElement)#5 (1) {
  ["column"]=>
  array(3) {
    [0]=>
    string(1) "2"
    [1]=>
    string(4) "Jack"
    [2]=>
    string(5) "Nixon"
  }

你可以在这里找到一个在线演示:http://codepad.org/CYyQhvnM

您应该看一下手册中的简单示例部分,它有一些非常有见地的示例,这些示例在本文中的解释比我的更深入:

> Basic SimpleXML usage

无论如何,我希望答案是有帮助的.相关问题是:

> How to use foreach with PHP & XML (simplexml)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。