Перейти к основному содержанию

phpBB 3.3.8 — Breadcrumb Menu ошибка PHP: Trying to access array offset on value of type bool

phpBB

Для форума phpBB есть хорошее расширение под названием Breadcrumb Menu. Оно добавляет простую вещь — выпадающие списки форумов при наведении на хлебные крошки.

php

Последние версии добавляют хлебные крошки только на крайний левый элемент, но и это полезно.

Расширение сначала разрабатывал PayBas, потом david63. Последняя доступная версия, которую я смог скачать: 1.0.6. Разработчик david63 выложил исправления для phpBB 3.3, но, однако, уничтожил свои наработки в github, так что его версию я найти не смог. Если у кого-то есть нормальная версия, то присылайте.

При переходе на PHP 8.0 в расширении Breadcrumb Menu появилась ошибка:

[04-Nov-2022 18:18:58 Europe/Moscow] PHP Warning: Trying to access array offset on value of type bool in [ROOT]\ext\paybas\breadcrumbmenu\event\listener.php on line 286

php

Поиск в Интернете ничего не дал, лезем в код, в 286 строку.

if (!($tree['forum_id'] == $next['parent_id']))

php

Новшество "Trying to access array offset on value of type bool" появилось в PHP 7.4. В новых версиях PHP нужно обязательно проверять наличие элементов массива перед работой с ними. Меняем код на:

if (!($tree['forum_id'] == (is_array($next) ? $next['parent_id'] : NULL)))

php

Проблема решена.

Теги

 

Похожие материалы

phpBB — проверка версии расширения

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

Теги

phpBB 3.2.9 — обновление до 3.3.0

Обновим форум с версии 3.2.9 на версию 3.3.0. Текущий форум работает на IIS. PHP версии 5.6.31. Минимально поддерживаемая phpBB 3.3 Proteus версия PHP повышена до PHP 7.1.3. Так что вместе с форумом придётся обновить PHP. Кроме того, в новой версии форума отказываются работать многие расширения, будем их чинить.

Теги