gpt4 book ai didi

PHP 尝试使用 getElementsByTagName 获取非对象的属性

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

我有一个简单的抓取工具,它使用 DomDocument 获取 HTML,然后显示结果。

foreach ($dom->getElementsByTagName('li') as $li) {
$key = $li->getElementsByTagName('span')->item(0)->textContent;
$value = $li->getElementsByTagName('strong')->item(0)->textContent;
$results[trim($key)] = trim($value);
}

但是,如果脚本无法检索 HTML,或者输入的选项有误,则返回

Trying to get property of non-object

$key = $li->getElementsByTagName('span')->item(0)->textContent;

如何检查它是否存在?

我试图将 $key 行设置为变量并检查长度是否大于 0,但即使作为变量也失败了。

最佳答案

检查item方法的返回值:

$span = $li->getElementsByTagName('span')->item(0);
if (!$span) {
continue;
}

实际上,您应该始终检查返回值。

关于PHP 尝试使用 getElementsByTagName 获取非对象的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40844331/

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