TYPO3 Fluid: подавить предупреждения PHP в flashMessages

Я создаю веб-сайт на основе TYPO3, где я использую различные расширения от TER. Теперь два плагина, используемые вместе, дают нежелательные результаты: предупреждения PHP на отображаемом веб-сайте.

Одно расширение tt_products, что вызывает сообщения, путем доступа к неопределенным индексам в некотором массиве. Другое расширение tkaddress, который отображает сообщения.

tkaddress основан на шаблонах Fluid и использует <f:flashMessages /> просмотр помощника для отображения правильных ошибок, таких как неверный адрес электронной почты, введенный при редактировании записей адресов.
К сожалению, игнорируемые предупреждения PHP также попадают в этот помощник вида, который выдает такие сообщения

Предупреждение PHP: Недопустимое смещение строки ‘name’ в /usr/local/www/apache24/data/typo3conf/ext/tt_products/view/class.tx_ttproducts_info_view.php строке 301

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

(Я знаю, исправление ошибок в tt_products будет правильным способом, но я не хочу его изменять)

Это некоторые настройки для подавления предупреждений PHP при использовании <f:flashMessages /> в жидкости?

Обновить:

Dev-среда:

  • TYPO3 6.1.5
  • PHP 5.3.28
  • tt_products 2.7.6
  • сообщение об ошибке (PHP INI): 22519
  • ОС: Windows 7

Live-среды:

  • TYPO3 6.1.5
  • PHP 5.4.40
  • tt_products 2.7.6
  • сообщение об ошибке (PHP INI): 22519
  • ОС: FreeBSD

Так что отличаются только ОС и версия PHP. Я также не смог найти разницу в настройках отчетов об ошибках, связанных с PHP или TYPO3 (оба имеют displayErrors установить на 1)

0

Решение

Похоже, что версия PHP вызывает описанную разницу между вашей средой разработки и производственной средой. Я цитирую;

Как исправить это незаконное смещение строки?

Однако это предупреждающее сообщение является новым для PHP 5.4. Старые версии не
предупредить, если это произошло. Они будут молча конвертировать ‘тип’ в 0, а затем
попытаться получить символ 0 (первый символ) строки. Так что если это
код должен был работать, потому что злоупотребление такой строкой
не вызывает никаких нареканий по PHP 5.3 и ниже. (Много старого PHP
Код столкнулся с этой проблемой после обновления.)

tt_products

Кажется, что вы используете tt_products версия 2.7.6,

С версии 2.7.6 было исправлено несколько ошибок, включая некоторые изменения кода внутри файла class.tx_ttproducts_info_view.php что также может решить вашу проблему.

Попробуйте обновить tt_products к версии 2.7.17, увидеть:

http://typo3.org/extensions/repository/view/tt_products

Если проблема все еще возникает в более поздней версии расширения, вы можете отправить ее по адресу:

https://forge.typo3.org/projects/extension-tt_products

Подавить предупреждения

Однако игнорирование любого предупреждения — неправильный способ взглянуть на:

TYPO3: как подавить устаревшие предупреждения?

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]