У меня есть несколько таблиц MySQL с utf8mb4 поля и другие с utf8.
Безопасно ли использовать utf8mb4 в строке подключения PDO для всех таблиц? Или мне нужно преобразовать все в utf8mb4 или запустить два разных подключения PDO?
Короткий ответ: НЕТ, это не безопасно.
Если ваши данные имеют utf8mb4
символы, и вы используете MySQL utf8
подключение charset, вы столкнетесь с проблемами, так как MySQL utf8
charset поддерживает только символы BMP (до 3 байтов).
Моя рекомендация — преобразовать все таблицы в utf8mb4
для полной поддержки UTF-8. Также, utf8mb4
обратно совместим с utf8
,
Других решений пока нет …