Ошибки HTML: mb_convert_encoding
Ryan
11 Июля 2023
Наткнулся на ошибку:
[19:38:08 11.07.2023 Europe/Moscow+03] Web:NOTICE mb_convert_encoding(): Handling HTML entities via mbstring is deprecated; use htmlspecialchars, htmlentities, or mb_encode_numericentity/mb_decode_numericentity instead {/yryr.ru/app/Core/URLScraper.php on line 53} yryr.ru/post/grabtitle 192.168.1.1 []
Даже не знаю что сказать. У меня просто появился лог, я о нем сообщил.
2
313
Распишу чуть подробней, т.к. тут были скрыты много «проблем». При парсинге поста через URL.
Нет ничего хуже, чем парсить html и пытаться от туда вытащить что-то нужное, например, заголовок. Так вот, сложно вытащить иногда заголовок, особенно если его вебмастер опубликовавший пост не оставил, а теги есть. :)
пример:
Или…, в метатегах размещает вебмастер ссылку на картинку, но адрес если вбить в браузер, то будет редирект. Он в meta- дает ложные данные, пустые, с редиректами.
Отсюда в старой версии и были предупреждения…
В новой версии LibArea эту задачи теперь делают библиотеки от Symfony.
Файла
URLScraper.php
в LibArea полностью переписан. Там больше не используется ничего подобного:mb_convert_encoding()
.Вроде Symfony хорошо справляется с разбором (и c guzzle) и с разными языками (мы тестировали и были в основном проблемы с арабским). Спасибо @jayabie — показывал разные «трудные» ссылки.
Как обновлять будете, предупреждения это и исчезнет.