Почему некоторые смайлики только возвращают код? utf8mb4

0

Я сохраняю данные сообщений в своей базе данных, используя кодировку utf8mb4.

Это работает для подавляющего большинства emojis, сохраняя и отображая их правильно, но есть некоторые, которые возвращают только код.

Как этот:


Ниже перечислены: https://emojipedia.org/nauseated-face/

Есть ли что-нибудь, что я могу сделать, чтобы эти пропавшие люди работали?

Тип сервера: MariaDB

Версия сервера: 10.0.32-MariaDB-0 + deb8u1 - (Debian)

Таблица Charset: utf8mb4

Column Collation: utf8mb4_unicode_ci

Соединение DB объявляется правильно:

$db = new PDO("mysql:host=$dbhost;dbname=$dbname;charset=utf8mb4;db_collat=utf8mb4_unicode_ci",
               $dbuser, $dbpass);
  • 0
    Я прекрасно вижу в этом посте. Я предполагаю, что если вы просто видите код для него, это потому, что ваш текущий шрифт не поддерживает этот символ.
Теги:
mariadb
emoji
utf8mb4

1 ответ

1

Никто не отреагировал на это, поэтому я сам буду следить за этим.

Проблема на самом деле не была связана с тем, как она хранится в базе данных.

Он основан на браузере. Оказывается, не все браузеры могут отображать все эможи - я этого не знал!

Например, emoji, о котором я упоминал выше, относится к Chrome и Safari, но не к Firefox.

Надеюсь, это спасет кого-то еще, когда я потратил деньги, пытаясь понять, что случилось.

  • 0
    Также выглядит хорошо для меня в Firefox. Какие шрифты установлены по умолчанию в настройках Firefox? Это те же шрифты по умолчанию, что и в Chrome и Safari? Я использую шрифты DejaVu во всех браузерах и у меня нет проблем с вашим примером ( dejavu-fonts.github.io )
  • 0
    Я не установил никаких шрифтов ни в одном из своих браузеров. Даже не знал, что это был вариант, чтобы быть честным, и, конечно, не следует ожидать, что ваш средний веб-пользователь также узнает об этом. Посмотрим на это, хотя спасибо.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню