foreach和simplexml

mrd*_*iri 2 php xml 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>
Run Code Online (Sandbox Code Playgroud)

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

$xml->rows
$xml->rows->row
$xml->row
$xml->column
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

谢谢.

hak*_*kre 6

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

$sxml = simplexml_load_string($xml);

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

这会给你以下输出:

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"
  }
Run Code Online (Sandbox Code Playgroud)

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

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

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