gpt4 book ai didi

PHP 通知 : Trying to get property of non-object on filtering XML with xpath query in PHP

转载 作者:行者123 更新时间:2023-12-03 16:17:40 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How can I get useful error messages in PHP?

(42 个回答)


7年前关闭。




我正在尝试过滤我的 XML 文件以查找具有特定名称的元素。我已按照 here 中的说明进行操作但结果每次都是空的。

XML

<vertalingen>
<kamers>
<kamer>
<naam>Bruidssuite</naam>
<beschrijving>Lorum Ipsum</beschrijving>
</kamer>
</kamers>
</vertalingen>

PHP
$xml = simplexml_load_file('translations/nederlands.xml');
$info = $xml->xpath('//kamer[naam="Bruidssuite"]');
echo " found {$info->naam}";

代码只返回“找到”

该代码给出了以下 PHP 错误:

PHP Notice: Trying to get property of non-object



我还尝试了以下变体:
$info = $xml->xpath('/vertalingen/kamers/kamer[naam="Bruidssuite"]');
$info = $xml->xpath('/kamers/kamer[naam="Bruidssuite"]');

最佳答案

该 XPath 查询返回几个元素。 xpath()的返回值是一个数组(成功时)或 FALSE(错误时),

来自 php.net manual :

Returns an array of SimpleXMLElement objects or FALSE in case of an error.



尝试以下操作:
$kamers = $xml->xpath('//kamer[naam="Bruidssuite"]');

foreach($kamer as $kamers) {
echo "Found {$kamer->naam}<br />";
}

或者,如果您确定属性 naam,则只需获取第一个元素是独特的:
$info = $xml->xpath('//kamer[naam="Bruidssuite"]');
echo " found {$info[0]->naam}";

关于PHP 通知 : Trying to get property of non-object on filtering XML with xpath query in PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29409396/

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