0

我有一个与 php 5.4 版有关的问题。我正在使用 php5.4。在 5.2 之前。

现在升级后出现问题。现在我的网站有很多警告

从空值创建默认对象

我试图通过检查其他帖子来解决这个问题,但没有成功。

警告在这一行

$searchresult[$pluginname][$i]->title = $value->title;
4

2 回答 2

1

是的,使用旧版本的 PHP,您可以这样做:

$a = null;
$a->somevar = 3;`

因为 $a 自动变成了 stdClass 类型。

使用 PHP 5.4 你不能这样做:你必须手动实例化 $a。

$a = new stdClass(); 
$a->somevar = 3;`

或者更好的是,如果可以的话,使用数组:

$a = array('somevar' => 3);
于 2012-10-28T16:27:27.137 回答
0

这是解决此问题的愚蠢方法,但您可以通过设置error_reportingE_ALL & ~E_NOTICE & ~E_STRICT.

如果您要以任何方式做错事而不是按照上面@theredled 的建议重写代码,这将特别有用。

于 2012-10-29T05:30:52.657 回答