Ошибка strip_tags() с null в комментариях

Любые критические ошибки будут исправлены в течение 24-48 часов.
Ответить
Vershik
Спонсор
Спонсор
Сообщения: 86
Зарегистрирован: 23 апр 2021, 00:47
Имя: Алексей
Откуда: Севастополь

Ошибка strip_tags() с null в комментариях

Сообщение Vershik »

Проблема
Deprecated: strip_tags(): Passing null to parameter #1 ($string) of type string is deprecated

Местоположение
Файл: includes/classes/model/comments.php
Строка: 102 (метод get_last_comment_info)

Причина
Метод fields_types::output() в некоторых случаях возвращает null (например, для пустых полей). В PHP 8.1+ передача null в strip_tags() вызывает deprecated ошибку, так как функция ожидает string.

Что исправить
Было:

Код: Выделить всё

<td style='font-size: 11px;'>" . htmlspecialchars(strip_tags(fields_types::output($output_options))). "</td>
Стало:

Код: Выделить всё

<td style='font-size: 11px;'>" . htmlspecialchars(strip_tags(fields_types::output($output_options) ?? '')). "</td>
Суть исправления
Добавить оператор ?? '' (null coalescing), который заменяет null на пустую строку.
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Ошибка strip_tags() с null в комментариях

Сообщение support »

Поправил. Прикрепил файл с исправлением. У кого аналогичная проблема, файл из архива замените в includes\classes\model\
Исправление будет в 3.7.2
Вложения
comments.zip
(2.89 КБ) 37 скачиваний
Basel_B
Сообщения: 6
Зарегистрирован: 29 июл 2019, 21:37
Имя: Vasilii
Откуда: Schenefeld

Re: Ошибка strip_tags() с null в комментариях

Сообщение Basel_B »

Здравствуйте,

схожая ошибка в app.php?

strip_tags(): Passing null to parameter #1 ($string) of type string is deprecated
includes/functions/app.php:1330
/index.php?module=items/listing [AJAX]
Ответить