我的 php (simplexml) 中有一个 xml 解析器,并且想在 xpath 下选择并保存一个索引元素
function startXML(&$resarrary, $path, $lang) {
if(file_exists($path)) {
$xml = simplexml_load_file($path);
if($xml) {
foreach($xml->xpath("//languageKey") as $cos) {
utf8_encode($cos);
// Select required languagekey
if ($cos[index] == $lang) {
foreach($xml->xpath("//languageKey[@index='$lang']//label[@type='js']") as $cos) {
?>
<table>
<tr>
<td><?php echo $cos ?></td>
</tr>
</table>
<?php
array_push($resarrary,$cos);
}
}
}
}
else {
FALSE;
}
}
}
表 echo $cos 仅用于测试....它为我提供了从我的 xml 文件中搜索的正确结果(在这种情况下,结果是“模式 1”)
所以选择有效,但我怎样才能将结果(“模式 1”)保存到数组中?如果我尝试这个 array_push(...) 并使用 print_r 查看 resarray 我只能得到 simplexml xpath 搜索的全部内容
数组([0] => SimpleXMLElement 对象([@attributes] => 数组([index] => list_mode_1 [type] => js)[0] => 模式 1))
如果我更改行 array_push($resarrary,$cos->attributes()); 我明白了
数组([0] => SimpleXMLElement 对象([@attributes] => 数组([index] => list_mode_1 [type] => js)))