gpt4 book ai didi

php - 解析RDF XML文件得到所有rdf :about values

转载 作者:行者123 更新时间:2023-12-03 16:00:06 24 4
gpt4 key购买 nike

我正在使用 php 的简单 xml 和 xpath 来解析一个 rdf xml 文件,并且正在努力获取所有 rdf:about 值的列表。

有什么建议吗?

最佳答案

在 PHP5.3 之前使用带有命名空间属性的 SimpleXml 时似乎存在问题。基本上,任何带有 : 的内容在转换为 SimpleXml 元素的对象属性时都将被删除。以下内容可以,但对我来说感觉很老套:

$rdf = str_replace('rdf:about', 'rdf_about', $rdf);  
$rdf = new SimpleXMLElement($rdf);
foreach($rdf->xpath('//@rdf_about') as $node) {
echo $node, PHP_EOL;
}

看这里:

您可以使用 DOM 而不是 SimpleXml:

$dom = new DomDocument;
$dom->loadXml($rdf);
$xph = new DOMXPath($dom);
$xph->registerNamespace('rdf', "http://www.w3.org/1999/02/22-rdf-syntax-ns#");
foreach($xph->query('//@rdf:about') as $attribute) {
echo $attribute->value, PHP_EOL;
}

但是,我建议通过 SimpleXml 或 DOM 为此使用专用库:

这是一篇关于解析器的博文:

关于php - 解析RDF XML文件得到所有rdf :about values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2486722/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com