php调用empty出现错误Can't use function return value in write context
今天的一个简单程序:
protected function _isLogin() {
if(empty(cookie(C('itokit_com')))) {
$this->error('未登录后台,请先登录', 'Public/login');
}
}
运行这个方法,竟然返回以下错误:
Can't use function return value in write context E:\www\www.itokit.com\js\Lib\Action\Jsadmin\CommonAction.class.php 第 16 行.
这个错误的原因是由于:empty函数参数必须为variable,不能为其它函数的返回值,包括str_replace,trim等等
而我的empty里使用了cookie有返回值的函数。所以就报了这个错误的了。
ok,知道错误原因,修改下即可了:
protected function _isLogin() {
$itokitname = cookie(C('JSADMIN_USER'));
if(emptyempty($itokitname)) {
$this->error('未登录后台,请先登录', 'Public/login');
}
}
好了,问题解决的了。大家如何有碰到像我这样的小问题,可以把变量先获取到,再使用empty哦。
php的其他使用错误相关文章:
1、如何正确理解PHP程序错误信息的表示含义
2、如何正确理解PHP的错误信息
3、新手入门:PHP网站开发中常见问题汇总