Наличие разных форматов символов PHP / Mysql

#php #mysql #character-encoding #html-entities

#php #mysql #кодировка символов #html-сущности

Вопрос:

На моем сайте я пытаюсь получить поддержку разных символов для поиска, например, на иврите, поэтому что-то вроде

 אייל גולן
  

но дело в том, что когда они выполняют поиск, он сохраняется в базе данных как

 #1488;#1497;#1497;#1500; #1490;#1493;#1500;#1503;
  

Что мне делать? Есть ли какой-либо способ преобразовать это обратно в читаемый текст на иврите? или я должен найти способ для правильного хранения в БД.

Спасибо

Комментарии:

1. Если возможно, вам не следует хранить символы иврита подобным образом: использование UTF-8 в качестве кодировки таблицы базы данных и использование собственных символов было бы лучше. Почему они таким образом попадают в базу данных? В какой момент они превращаются в объекты HTML?

Ответ №1:

Ну, я бы не советовал переходить к html_entity_decode(). Я бы использовал это как последнее решение. Создайте свою страницу и базу данных в формате UTF-8 (набор символов и файл, если необходимо).

Позже, если вы используете какие-либо встроенные функции php для символов html, убедитесь, что они также допускают UTF8.

Это позволит вам меньше кодировать и доставит меньше головной боли.

Ответ №2:

html_entity_decode() может вам помочь.