致命错误:无法在写上下文中使用方法返回值(错误信息如下)

时间:2016-04-07 20:05:20

标签: php

找到我的脚,但我得到了上面的错误,重新定向我以符合以下信息。

if(empty($displayData->sa_params->get('slab_enable'));

我会感激一些指导。

谢谢!

2 个答案:

答案 0 :(得分:1)

如果您使用的是PHP版本< 5.5.0,您无法直接使用empty检查函数返回值。

  

注意:

     

在PHP 5.5之前,empty()仅支持变量;其他任何东西都会导致解析错误。换句话说,以下将不起作用:empty(trim($ name))。相反,使用trim($ name)== false。

您必须先将其分配给变量。此外,您错过了)

尝试:

$slab_enabled = $displayData->sa_params->get('slab_enable');
if(empty($slab_enabled)) { /*do stuff*/ };

如果您不知道使用的是哪个版本,可以查看echo phpversion();

答案 1 :(得分:0)

在某些PHP版本或服务器配置中,将函数传递给empty()会导致该错误。在这种情况下,最佳做法是将函数返回的值赋给变量,然后检查该变量是否为空。

以下是一个例子:

$slab_enable = $displayData->sa_params->get('slab_enable'); //assign to variable
if(empty($slab_enable)) //checking if variable is empty
{
   ...
}