我不希望搜索字符串值不区分大小写。我想搜索该节点而不考虑大小写敏感性。如果XML如下所示:
<items>
<ITEM>My text!</ITEM>
</items>
我需要这样的工作:
$someXmlDoc->xpath("/items/item/text()");
目前,仅此方法有效:
$someXmlDoc->xpath("/items/ITEM/text()");
最佳答案
xpath 1.0中不存在php支持的大小写转换(请参见http://jp.php.net/manual/en/class.domxpath.php)
您可以使用以下非常有限的含义显示的翻译功能。注意:不建议使用,因为它不适用于非英语字符
/items/*[translate(node(),'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz') = 'item']/text()
更新:如果node()无法正常工作,请尝试使用name()
你也可以做一个工会如下
/items/ITEM/text() | /items/item/text()
关于php - 如何在PHP xpath中对节点执行不区分大小写的搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/953845/