我不知道如何,但我的主题向我显示了这个错误:
警告:在第792行的/custom_functions.php中从空值创建默认对象
我在第792行的custom_functions.php中找到了代码
$update_transient->response = array_merge(!empty($update_transient->response) ? $update_transient->response : array(), $et_update_themes->response);
我需要做什么,解决它?
答案 0 :(得分:1)
首先解释一下这条线是如何工作的。问号是一个三元运算符,使语句的工作方式如下:
if(array_merge(!empty($update_transient->response)) {
$update_transient->response = $update_transient->response;
} else {
$update_transient->response = array(), $et_update_themes->response);
}
(箭头指的是从关联数组或对象实例中提取值)
无论哪种方式 if 语句流动,$update_transient->response
都被设置为某种东西。
我打赌你的错误是因为$update_transient->response
为空。由于升级到PHP版本,您可能第一次看到此错误。
您应该先尝试添加if语句,以检查该值是否为空。如果是,则将其设置为stdClass
。
if (!is_object($update_transient->response))
{
$update_transient->response = new stdClass;
}
(stdClass是PHP的通用空类)