Strict Standards
发布于:2022-01-17 09:50:54
#1 枝头的鱼
今天搜索之后出来了这个:Strict Standards: Only variables should be passed by reference in /var/www/html/cms/SpeedPHP/Core/spModel.php on line 436。请问这个怎么解决啊???
2012-07-04 10:26:57
#2 jake
帮你Google了一下,在php.ini中设置
error_reporting = E_ALL
就行。建议以后遇到问题最好先搜索。
2012-07-04 10:34:17
#3 枝头的鱼
jake 发表于 2012-7-4 10:34
帮你Google了一下,在php.ini中设置
error_reporting = E_ALL
改了也不行啊,在网上看过了,这行代码需要改吗?
on line
436:$total_count = array_pop( array_pop( $this->model_obj->findSql("SELECT COUNT({$this->model_obj->pk}) as sp_counter FROM ($conditions) sp_tmp_table_pager1") ) );
2012-07-04 11:06:18
#4 jake
改了要重启服务器。
或改成
error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
这样是没问题,目前一般框架都很难支持strict模式,所以只能收窄错误机制。
目前开发也不建议用strict模式。
2012-07-04 11:25:59
#5 枝头的鱼
jake 发表于 2012-7-4 11:25
改了要重启服务器。
或改成
还是不行啊,也重启了。别的页面也有用到这行代码的就没事,为什么这个页面就不行呢,头痛啊。。。
2012-07-04 11:50:24
#6 jake
枝头的鱼 发表于 2012-7-4 11:50
还是不行啊,也重启了。别的页面也有用到这行代码的就没事,为什么这个页面就不行呢,头痛啊。。。
...
这样说的话,就和这行代码没关系了。你看看别的代码有没有问题?
2012-07-04 12:00:43
#7 枝头的鱼
jake 发表于 2012-7-4 12:00
这样说的话,就和这行代码没关系了。你看看别的代码有没有问题?
好了,网上有这样的解释,把那句话拆开,就是要先定义变量,我改成了这样:
$addError = $this->model_obj->findSql("SELECT COUNT({$this->model_obj->pk}) as sp_counter FROM ($conditions) sp_tmp_table_pager1");
$addError2 = array_pop( $addError );
$total_count = array_pop( $addError2 );
然后就好了,
2012-07-04 12:19:27
#8 jake
mark,记录一下。
本帖转移到意见反馈区
2012-07-04 12:29:23