严格标准模式是一种 PHP 设置,它告诉它在代码执行某些技术上不正确的事情时抛出警告消息。
然而,PHP 可以处理这些问题——根据问题中的消息,PHP 能够对这种情况下的代码做出假设并继续进行。
这些严格模式警告一直存在;您在 5.4 而不是 5.2 中获取它们的原因是因为在 5.4 中它们默认启用,而在 5.2 中它们默认为关闭。
基本上,随着每个新版本的发布,PHP 对过时或糟糕的编程实践逐渐变得更加严格。这通常是一件好事,但在升级时确实会给旧代码留下问题。
但是严格模式不是强制性的;它可以被禁用。因此,如果您得到的只是有关严格模式的警告,那么解决问题的最快方法就是将其关闭。
您可以在PHP.ini
or.htaccess
文件中执行此操作,也可以在 PHP 本身中使用ini_set()
.
- PHP.ini:
error_reporting=30719
- .ht 访问:
php_value error_reporting 30719
- 在您的 PHP 代码中:
error_reporting(E_ALL & ~E_STRICT);
(30719 等价于E_ALL
(32767) 减E_STRICT
(2048),但名称 E_ALL 和 E_STRICT 在 ini 文件中无效,因此您必须使用数值)
一般来说,最好将系统升级到不会导致严格模式警告的软件;也许更新版本的 Joomla 会对此有所帮助。但在短期内,这将防止出现严格模式警告,并希望能帮助您过渡到新的 PHP 版本。
希望有帮助。