【发布时间】:2019-08-28 16:44:31
【问题描述】:
我正在尝试搜索以下结构的 XML 文件:
<Root>
<Record>
<Filenumber>12314123</Filenumber>
<StatusEN>Closed</StatusEN>
<StatusDate>02 Nov 2019</StatusDate>
</Record>
<Record>
<Filenumber>0678672301</Filenumber>
<StatusEN>Closed</StatusEN>
<StatusDate>02 Nov 2019</StatusDate>
</Record>
</Root>
我想根据文件编号进行搜索,但返回匹配的所有 3 个节点和值。
我在努力
$q = '12314123';
$file = "status.xml";
$doc = new DOMDocument;
$doc->preserveWhiteSpace = false;
$doc->Load($file);
$xpath = new DOMXPath($doc);
$query = "/Root/Record/Filenumber[contains(text(), '$q')]";
$entries = $xpath->query($query);
foreach ($entries as $entry) {
echo $entry->parentNode->nodeValue ;
}
这似乎返回了我想要的所有值,但在一个字符串中。如何将它们作为单独的变量返回,或者以数组或 JSON 形式返回?
【问题讨论】: