【发布时间】:2017-05-19 03:52:52
【问题描述】:
如何使用 PHP SimpleXML Parser 同时回显 John 和 Mike?当两者都有不同的项目时
<DATA>
<KEY>
<item0>
<RTS>John</RTS>
</item0>
<item1>
<RTS>Mike</RTS>
</item1>
</KEY>
</DATA>
这可行,但如果您尝试使用 $xml = simplexml_load_file("example.xml") 或 die("Error: Object Creation failure");
它不适用于 simple_load_file
<?php
$xml =
"<?xml version='1.0' encoding='UTF-8'?>
<DATA>
<KEY>
<item0>
<RTS>John</RTS>
</item0>
<item1>
<RTS>Mike</RTS>
</item1>
</KEY>
</DATA>";
function xml2array($xml)
{
$arr = array();
foreach ($xml as $element)
{
$tag = $element->getName();
$e = get_object_vars($element);
if (!empty($e))
{
$arr[$tag] = $element instanceof SimpleXMLElement ? xml2array($element) : $e;
}
else
{
$arr[$tag] = trim($element);
}
}
return $arr;
}
$xml = new SimpleXMLElement($xml);
$data = xml2array($xml);
foreach ($data as $key => $value) {
foreach ($value as $key1 => $val1) {
echo $val1['RTS']; echo "<br/>";
}
}
?>
【问题讨论】:
-
你能提供你目前尝试过的代码吗?
-
刚刚添加的代码
标签: php xml-parsing simplexml