При попытке в phpmyadmin занести данные в таблицу выдается след ошибка
Warning: #1366 Incorrect string value: '\xF0\x9F\x92\x98' for column 'txt' at row 1
Спотыкается mysql на некоем символе, который пришел из описания к видео инстаграмма (на инстаграмме он выводился как квадратик) и является скорее всего интерпритацией смайлика эмодзи, так как vk к примеру распознал этот символ и вывел вместо него картинку "сердечко".
Привожу символ здесь, хотя вряд ли что то понятное выведется здесь:
💘
Структура таблицы
CREATE TABLE IF NOT EXISTS `test` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`txt` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf32 AUTO_INCREMENT=2 ;
Результат вставки:
INSERT INTO `test` (`id`, `txt`) VALUES
(1, '????');
Вначале кодировка была utf8_general_ci, затем я сделал utf8mb4 и utf32 — ничего не помогает.
Вопрос: как в php можно отловить подобный символ, а лучше все подобные ему, чтобы mysql не крашился и не обрезал весь текст, идущий после него?