Skip to main content
 首页 » 编程设计

php之使用 PHP 的 SimpleXMLElement 类查找指定元素的最佳方法是什么

2024年08月30日32qq78292959

我目前正在进行的项目涉及将一个用 Python 编写的网站翻译成 PHP 代码。我现在正在做的部分要求我将 $_GET 请求发送到 Web 服务器。我返回的响应始终采用 XML 格式,因此我使用 *simplexml_load_file()* 函数来获取结果。

我需要解析网络服务器发回给我的 XML。 Python 有一个很棒的库,叫做 BeautifulStoneSoup,它有一个返回指定属性内容的 find() 方法。

在查看 http://php.net/manual/en/book.simplexml.php 处的 PHP 函数列表后,我似乎找不到任何允许我指定属性名称并获取内容的东西。请记住,我可能正在寻找的属性不一定总是深入 XML 数组的一个级别。它可能是数组的几个维度。

如果这不够具体,我可以提供一个示例。感谢 friend 们的帮助!

请您参考如下方法:

Xpath 听起来像您要找的东西。它允许在 XML 目录的任何级别内进行搜索。

以下示例使用 xml 目录深入查看多个级别,并检查描述节点是否包含 $txtSearch

中包含的任何内容
$holidayDoc = simplexml_load_file($url);     
$qry = "//channel/item[description[contains(text(),\"$txtSearch\")]]"; 
$holidayDoc->xpath($qry); 

然后可以使用 foreach 循环迭代结果