哪个Joomla版本低于2且接近1.5。支持PHP 5.4?

时间:2013-02-14 08:32:50

标签: php mysql joomla version joomla1.5

我的网络托管服务提供商表示他们正在从5.2.17更改为php 5.4,并且我尝试使用php 5.4在本地运行我的网站,我充满了问题

像这样

  

严格标准:非静态方法不应静态调用JError :: isError(),假设$ 7来自721行D:\ xampp \ htdocs \ indoor \ libraries \ joomla \ application \ application.php中的不兼容上下文

所以我需要升级接近1.5的joomla版本,目前我使用的是1.5.24

4 个答案:

答案 0 :(得分:2)

严格的标准模式是一种PHP设置,它告诉它在代码执行某些技术上不正确的事情时抛出警告消息。

但是,PHP可以解决这些问题 - 根据问题中的消息,PHP能够在这种情况下对代码做出假设并继续。

这些严格模式警告一直存在;你在5.4而不是5.2中获得它们的原因是因为在5.4中默认启用它们,而在5.2中它们默认是关闭的。

基本上,对于每个新版本,PHP对于过时或糟糕的编程实践都在逐渐变得越来越严格。这通常是一件好事,但在升级时会让旧代码出现问题。

但严格模式不是强制性的;它可以被禁用。因此,如果你得到的是关于严格模式的警告,处理问题的最快方法是关闭它。

您可以使用PHP.ini.htaccessini_set()文件或PHP本身中执行此操作。

  • PHP.ini:error_reporting=30719
  • .htaccess:php_value error_reporting 30719
  • 您的PHP代码中的
  • error_reporting(E_ALL & ~E_STRICT);

(30719与E_ALL(32767)减去E_STRICT(2048)等效,但名称E_ALL和E_STRICT在ini文件中无效,因此您必须使用数值)< / p>

通常,最好将系统升级到不会导致严格模式警告的软件;也许更新版本的Joomla会对此有所帮助。但是在短期内,这将阻止严格模式警告的出现,并希望帮助您转换到新的PHP版本。

希望有所帮助。

答案 1 :(得分:0)

这是您静态调用全局函数时的内部joomla错误。使用调试器并以调试模式运行页面。

答案 2 :(得分:0)

是的,现在升级你的joomla版本会更好,因为joomla 1.5没有安全更新。还要记住,开发的所有新扩展都与joomla 2.5兼容,你不能将它用于1.5。

答案 3 :(得分:0)

PHP严格标准:

"Non-static method JTable::getInstance() should not be called statically, assuming $this from incompatible context"

Source: http://mytecharticle.com/?p=1484