gpt4 book ai didi

php - DOMXPath::evaluate 和 DOMXPath::query 之间有什么区别?

转载 作者:可可西里 更新时间:2023-11-01 12:47:37 24 4
gpt4 key购买 nike

正在尝试确定哪个更适合我的用例...

对比了这些方法的文档,我模糊的理解是evaluate返回类型化结果但 query没有。此外,query示例包括遍历许多结果,但 evaluate示例假定单一类型的结果。

还是不够聪明!任何人都可以解释(尽可能接近外行的术语)你什么时候会使用一个或另一个 - 例如上面提到的多重/单一结果会一直如此吗?

最佳答案

DOMXPath::query() 仅支持返回节点列表的表达式。 DOMXPath::evaluate() 支持所有有效的表达式。官方方法也被命名为 evaluate():http://www.w3.org/TR/DOM-Level-3-XPath/xpath.html#XPathEvaluator

选择 div 内的所有 p 元素://div//p

选择当前文档a元素中的所有href属性://a/@href

您可以使用 string() 函数将节点列表的第一个元素转换为字符串。这不适用于 DOMXpath::query()。

选择文档的标题文本:string(/html/head/title)

还有其他函数和运算符会改变表达式的结果类型。但它始终是明确的。您将始终知道结果是什么类型。

关于php - DOMXPath::evaluate 和 DOMXPath::query 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23793816/

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