严格的标准:只有变量才能通过引用传递。严格标准:非静态方法

时间:2013-12-10 22:33:43

标签: php standards strict

我刚搬到新主人那里,我收到了这些错误:

  

严格标准:只有变量才能在第34行的/home/---/public_html/dl/index.php中通过引用传递**

这就是第34行:

echo '<title>'.str_replace('%20', ' ', end(array_filter(explode("/", $_GET['dir'])))).' | PlayWAP.Mobi</title>';**

然后我也得到了这个:

  

严格标准:非静态方法PEAR :: isError()不应该静态调用,假设来自第403行的/home/---/public_html/dl/id.php中不兼容的上下文的$ this **

请帮忙吗?

1 个答案:

答案 0 :(得分:1)

函数end()确实需要变量,而不是函数结果,如php.net上所记录的那样:http://php.net/end

PEAR类没有将方法isError()定义为静态,因此不允许您这样调用它:PEAR::isError($foo)

可以通过设置不太严格的错误级别来禁用这两个错误,但它们是代码库变老并需要刷新的迹象。如果不修复这些错误(而不仅仅是消除错误输出),您可能无法在几年内在新的PHP安装上使用您的网站。