Я отлаживаю сайт Joomla, используя старый Joomla 2.5. При переходе к php 5.4 мы столкнулись с широко обсуждаемыми ошибками строгих стандартов. Большинство из них было легко исправить. У меня есть одна последняя ошибка, которая оказывается более сложной.PHP 5.4 Строгие стандарты Как сделать разрозненные, неупорядоченные параметры дочернего метода совместимыми с родительским методом?
Строгие стандарты: Декларация JCacheControllerView :: получить() должны быть совместимы с JCacheController :: получить ($ ID, $ группа = NULL) в /дома/XXXXXX/public_testing/библиотеки/Joomla/кэш/контроллер/view.php на линии 137
Исследования показывают советы, такие как это: Declaration of Methods should be Compatible with Parent Methods in PHP
JCacheController определяет
public function get($id, $group = null)
JCacheControllerView расширяет JCacheController и определяет:
public function get(&$view, $method, $id = false, $wrkarounds = true)
Так что я попытался изменить заявление, чтобы иметь одни и те же параметры и те же значение по умолчанию: JCacheController определяет
public function get($id=false, $group = null, &$view = null, $method = null, $wrkarounds = true)
JCacheControllerView расширяет JCacheController и определяет:
public function get(&$view = null, $method = null, $id = false, $wrkarounds = true, $group = null)
Какие результаты в:
Строгие стандарты: Декларация о JCacheControllerView :: получить() должны быть совместимы с JCacheController :: получить ($ ID = ложь, $ группа = NULL, & $ посмотреть = NULL, $ метод = NULL, $ wrkarounds = истина) в /home/freedibl/public_testing/libraries/joomla/cache/controller/view.php на линии 137
Может быть, это потому, что параметры не в том же самом заказ? Как я могу исправить это, не изменяя исходные вызовы методов? Оба метода широко используются, и было бы сложно изменить каждый вызов на любой из них в joomla.
Ошибка перестала отображаться (мне неудобно возникать ошибки, это проблема Joomla?). Если он снова появится, я обязательно удалю ссылку. Спасибо за вашу помощь. – slick