Это, наверное, самый элегантный способ сделать это. Прямо в вызове конструктора PDO, но избегая опции багги-кодировки (как упоминалось выше):
$connect = new PDO(
"mysql:host=$host;dbname=$db",
$user,
$pass,
array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
)
);
Отлично работает для меня.
Если у вас все еще есть эта проблема, я исправил ее, установив python в качестве фреймворка (я установил conda brew cask install anaconda
. Затем добавьте вашу Anaconda в путь: export PATH=$HOME/anaconda3/bin/:$PATH
через vim ~/.bash_profile
. Я все еще могу задействовать pipenv с помощью Анаконда.