Задать вопрос

Как добавить emoji в базу данных?

Необходимо добавить в базу данных текст, содержащий смайлы emoji

Пробовал так:
$str='<p>Текст с emoji. Еще текст</p>'; //Вместо emoji должен быть смайл
$res = $db->prepare("INSERT INTO `table` (`str`) VALUES (:str)");
$res->bindParam(":str", $str, PDO::PARAM_STR, 60);
$res->execute(); //В базе сохранится строка "<p>Текст с "

Но строка обрезается. В базу заносится только текст до emoji. Пробовал обрабатывать строку с помощью htmlentities();, но результата нет. Emoji остаются не тронутыми.
Кодировка utf-8, если это имеет значение.

Подскажите, как решить проблему
  • Вопрос задан
  • 4359 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@jowee
Backend Developer
>Кодировка utf-8, если это имеет значение.

Имеет, используйте utf-8mb4
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Юрий Чернышев => Просто исправление кодировки столбца таблицы в utf-8mb4 не дал эффекта
Ответ написан
Комментировать
aleshahate
@aleshahate
Я добавлял смайлы в базу данных по такому принципу.
Есть смайл с таких уникодом U+1F600
То в базе данных я указываю
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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