Задать вопрос
@Dimentiy-cmd

Как сделать отображение эмодзи в PHP?

После переноса сайта на php появилась проблема, эмодзи отображаются знаком "?".
Решением было только поменять кодировку таблицы базы данных MySQL, но в моем случае она была utf8mb4, которая должна поддерживать эмодзи.
  • Вопрос задан
  • 174 просмотра
Подписаться 1 Простой 5 комментариев
Решения вопроса 2
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
Стоит сперва заглянуть в базу данных и убедиться что в тексте лежат emoji, а не "?". Используйте для этого любой GUI-клиент, или PhpMyAdmin или mysqli-cli
Если там действительно лежат emoji то настройки подключения к БД в коде смотрим, и настройки отображения данных (может хитрый фильтр в шаблонизаторе и тд)
Если в базе лежат "?" значит данные побились при переносе сайта, например при создании или заливке дампа SQL.
Ответ написан
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Решением было только поменять кодировку таблицы базы данных MySQL, но в моем случае она была utf8mb4, которая должна поддерживать эмодзи.
Так как utf8mb4 "обратно совместима" с utf8, все кроме 4байтных символов будет нормально отображаться. Соответственно при указании настроек соединения стоить исправить чарсет на utf8mb4, который по умолчанию у вас скорее всего utf8.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы