在我的本地环境中,我尝试通过DevDemon安装Expression Engine模块Updater。主MAMP php.ini文件和本地php.ini文件都具有以下设置:
error_reporting = E_ALL & ~E_STRICT & ~E_DEPRECATED & ~E_NOTICE & ~E_WARNING display_errors = Off
但是这些错误仍在显示:
A PHP Error was encountered
Severity: 8192
Message: Non-static method Updater_helper::arrayExtend() should not be called statically, assuming $this from incompatible context
Filename: updater/api.updater.php
Line Number: 109
A PHP Error was encountered
Severity: 8192
Message: Non-static method Updater_helper::getThirdPartyPath() should not be called statically, assuming $this from incompatible context
Filename: updater/api.updater.php
Line Number: 132
A PHP Error was encountered
Severity: 8192
Message: Non-static method Updater_helper::getThemePath() should not be called statically, assuming $this from incompatible context
Filename: updater/api.updater.php
Line Number: 133
A PHP Error was encountered
Severity: 8192
Message: Non-static method Updater_helper::getThirdPartyThemePath() should not be called statically, assuming $this from incompatible context
Filename: updater/api.updater.php
Line Number: 134
A PHP Error was encountered
Severity: Warning
Message: Cannot modify header information - headers already sent by (output started at /Users/Michael/Sites/creativevisuals/system/codeigniter/system/core/Exceptions.php:170)
Filename: core/Common.php
Line Number: 412
为什么这些错误仍在显示?我每次编辑php.ini
文件时都尝试重新启动MAMP服务器,phpinfo()
反映了这些设置处于活动状态的事实。
当我在phpinfo()
的第109行之后运行api.updater.php
时,设置会发生变化。不知何故,这个脚本覆盖了php设置。为什么以及在哪里这样做?
答案 0 :(得分:2)
我假设您正在使用PHP 5.6导致这些错误。大多数开发人员还没有支持它,如果你想摆脱错误,添加一个"静态"在函数名称前面。