Как исправить Предупреждение: объявление об ошибке Hook :: exec в Prestashop 1.7? - PullRequest
0 голосов
/ 24 апреля 2019

Я надеюсь, что с вами все в порядке. Мне нужна ваша помощь для решения этой проблемы, которая сохраняется уже несколько дней.Честно говоря, я не очень понимаю.Большое спасибо за вашу помощь.

Warning: Declaration of Hook::exec($hook_name, $hook_args = Array, $id_module = NULL, $array_return = false, $check_exceptions = true, $use_push = false, $id_shop = NULL) should be compatible with HookCore::exec($hook_name, $hook_args = Array, $id_module = NULL, $array_return = false, $check_exceptions = true, $use_push = false, $id_shop = NULL, $chain = false)

Symfony\Component\Debug\Exception\ContextErrorException:
Warning: Declaration of Hook::exec($hook_name, $hook_args = Array, $id_module = NULL, $array_return = false, $check_exceptions = true, $use_push = false, $id_shop = NULL) should be compatible with HookCore::exec($hook_name, $hook_args = Array, $id_module = NULL, $array_return = false, $check_exceptions = true, $use_push = false, $id_shop = NULL, $chain = false)

  at override/classes/Hook.php:84
  at Symfony\Component\Debug\ErrorHandler->handleError(2, 'Declaration of Hook::exec($hook_name, $hook_args = Array, $id_module = NULL, $array_return = false, $check_exceptions = true, $use_push = false, $id_shop = NULL) should be compatible with HookCore::exec($hook_name, $hook_args = Array, $id_module = NULL, $array_return = false, $check_exceptions = true, $use_push = false, $id_shop = NULL, $chain = false)', '/home/u161749200/domains/eas.ci/public_html/override/classes/Hook.php', 84, array('className' => 'Hook', 'classDir' => '/home/u161749200/domains/eas.ci/public_html/'))
     (classes/PrestaShopAutoload.php:152)
  at require_once()
     (classes/PrestaShopAutoload.php:152)
  at PrestaShopAutoload->load('Hook')
  at call_user_func(array(object(PrestaShopAutoload), 'load'), 'Hook')
     (vendor/symfony/symfony/src/Symfony/Component/Debug/DebugClassLoader.php:153)
  at Symfony\Component\Debug\DebugClassLoader->loadClass('Hook')
  at spl_autoload_call('Hook')
     (classes/Dispatcher.php:483)
  at DispatcherCore->loadRoutes()
     (classes/Dispatcher.php:229)
  at DispatcherCore->__construct()
     (classes/Dispatcher.php:194)
  at DispatcherCore::getInstance()
     (codazon/index.php:99)

1 Ответ

0 голосов
/ 24 апреля 2019

Как говорится в сообщении об ошибке, объявления функций должны быть совместимы. HookCore::exec включает $chain = false в конце, Hook::exec - нет.

Кажется, что в какой-то момент они изменили сигнатуру функции, но, возможно, не все плагины были обновлены, чтобы соответствовать. Убедитесь, что все ваши плагины актуальны. Если это не решает проблему, возможно, отключите их по одному, чтобы узнать, сможете ли вы найти, какая из них вызывает проблему, и обратитесь к поставщику, если это то, без чего вы не можете жить.

...