Я знаю, что по этому вопросу существует много-много сообщений, однако большинство из них старые. Я знаю, что в плохие старые времена существовал набор символов MySQL под названием «utf8», который был трехбайтовым подмножеством настоящего UTF-8, и что для того, чтобы получить истинный четырехбайтовый UTF-8, вам нужно было указать набор символов «utf8mb4». Однако у меня сложилось впечатление, что новые версии MySQL и PHP теперь используют настоящий UTF-8.
Мой файл php.ini (расположенный по адресу /etc/php/8.1/cli/ php.ini) содержит следующие строки:
Код: Выделить всё
; PHP's default character set is set to UTF-8.
; https://php.net/default-charset
default_charset = "UTF-8"
https://www.phptutorial.net/php-pdo/pdo ... -to-mysql/
При обсуждении того, как установить PDO-соединение с сервером базы данных MySQL, предлагается использовать следующий формат имени источника данных:
Код: Выделить всё
$dsn = "mysql:host=localhost;dbname=bookdb;charset=UTF8";
p>
Может ли кто-нибудь пролить свет на этот вопрос?
Подробнее здесь: https://stackoverflow.com/questions/792 ... nd-php-8-1