1
假設我有這樣的XMLXML解析困境,由於命名空間
<?xml version="1.0" encoding="UTF-8"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:irp="http://kuleuven-kulak.be/itec/ns/irp/" xml:id="irp-rmg-fr-2013-05-03-00862-src" xml:lang="fr">
<text xml:id="irp-rmg-fr-2013-05-03-00862-src." xml:lang="fr">
<body>
<div>
<p>
<irp:PEnrich irp:path="(//section/paragraph)[1]" n="irp-1">
<irp:PNerd>
1955 (30 avril) Naissance à
<irp:ne ref="http://fr.dbpedia.org/resource/Lille" irp:confidence="1" type="LOC">Lille</irp:ne>.
</irp:PNerd>
</irp:PEnrich>
</p>
</div>
</body>
</text>
</TEI>
我應該如何使用的SimpleXML和XPath解析IRP:PNerd節點得到這樣的字符串:
1955 (30 avril) Naissance à <url="http://fr.dbpedia.org/resource/Lille">Lille</url>.
我試着通過這樣做,把文本:
$penrich = $xml->xpath("//irp:PEnrich");
foreach ($penrich as $p) {
$pnerds = $p->children("irp", true);
$pnerd = $pnerds->PNerd;
$ne = $pnerd->ne;
foreach ($ne as $n) {
print_r($n->children());
}
echo "----\n";
}
但這隻能檢索類型和REF: (另外,應該怎樣我在代碼中訪問這些值)
SimpleXMLElement Object
(
[@attributes] => Array
(
[ref] => http://fr.dbpedia.org/resource/Lille
[type] => LOC
)
)
但我想獲得的東西,如:?
1955 (30 avril) Naissance à <url="http://fr.dbpedia.org/resource/Lille">Lille</url>.
謝謝。這已經幫助了我很多。我仍然有一個更完整的例子的問題,但我會相應地更新問題。 – profoX
我接受了你的答案,因爲它包含了非常有用的信息來完成項目。謝謝 – profoX