>  기사  >  백엔드 개발  >  typecho程序的error_log文件提示

typecho程序的error_log文件提示

WBOY
WBOY원래의
2016-06-06 20:18:351573검색

typecho根目录下生成一个error_log文件
内容为:

<code>[03-Feb-2016 06:20:43 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:20:43 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:20:43 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:20:43 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
</code>

可否在/var/Typecho/Plugin.php文件中增加这一句?

<code>error_reporting( E_ALL & ~E_STRICT );</code>

这样有没有用,会不会对程序有影响?

回复内容:

typecho根目录下生成一个error_log文件
内容为:

<code>[03-Feb-2016 06:20:43 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:20:43 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:20:43 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:20:43 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
[03-Feb-2016 06:24:37 UTC] PHP Strict Standards:  call_user_func_array() expects parameter 1 to be a valid callback, non-static method Avatars_Plugin::avatars() should not be called statically in /home/...
</code>

可否在/var/Typecho/Plugin.php文件中增加这一句?

<code>error_reporting( E_ALL & ~E_STRICT );</code>

这样有没有用,会不会对程序有影响?

抑制错误的输出应该是治标不治本的~

而且尽量不要动核心代码,不然以后程序更新的时候可能会有意想不到的结果

所以我们应该从错误的根源入手:

这个报错是因为 Avatars 插件里面的 avatars() 函数没有声明成静态函数,而用 Avatars_Plugin::avatars() 的时候访问的是静态函数所以就出问题了,所以直接在 avatars 插件的 plugins.php 的 avatars 函数前面加一个 static 关键字就不会报错了

去下载了个 Avatars 插件看了看,应该是在 plugins.php 的 109 行,

<code>public function avatars($size,$rating,$default,$comments){</code>

改成

<code>public static function avatars($size,$rating,$default,$comments){</code>

就可以啦

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.