php调用empty出现错误Can't use function return value in write context

php调用empty出现错误Can't use function return value in write context

2012-10-28 09:33:22 | 11391次阅读 | 评论:0 条 | itokit php调用empty出现错误Can't use function return value in write context

今天的一个简单程序:

C/C++ Code复制内容到剪贴板
  1. protected function _isLogin() {  
  2.    if(empty(cookie(C('itokit_com')))) {  
  3.        $this->error('未登录后台,请先登录', 'Public/login');  
  4.    }  
  5. }  

运行这个方法,竟然返回以下错误:
Can't use function return value in write context E:wwwwww.itokit.comjsLibActionJsadminCommonAction.class.php 第 16 行.

这个错误的原因是由于:empty函数参数必须为variable,不能为其它函数的返回值,包括str_replace,trim等等
而我的empty里使用了cookie有返回值的函数。所以就报了这个错误的了。
ok,知道错误原因,修改下即可了:

PHP Code复制内容到剪贴板
  1. protected function _isLogin() {  
  2.     $itokitname = cookie(C('JSADMIN_USER'));  
  3.     if(emptyempty($itokitname)) {  
  4.         $this->error('未登录后台,请先登录', 'Public/login');  
  5.     }  
  6. }  

好了,问题解决的了。大家如何有碰到像我这样的小问题,可以把变量先获取到,再使用empty哦。

php的其他使用错误相关文章:
1、如何正确理解PHP程序错误信息的表示含义
2、如何正确理解PHP的错误信息
3、新手入门:PHP网站开发中常见问题汇总

原文地址:https://www.cnblogs.com/u0mo5/p/4570859.html