tp3.2.3数据库配置 'DB_CHARSET'=> 'utf8mb4',执行报错。如下
SQLSTATE[HY000] [2019] Can't initialize character set utf8mb4 (path: /usr/share/mysql/charsets/)
错误位置
FILE: /data1/www/htdocs/733/ecampus/3/ThinkPHP/Library/Think/Db/Driver.class.php LINE: 109
如果不用tp,使用原生的sql ‘set names utf8mb4’ 执行没问题。
到底哪里出错了 求解决!谢谢!
帮帮我!我顶!
应该是你的配置没生效 试试直接改convention.php
我也遇到类似的问题,我的更奇怪
线上和本地都是TP3.2,本地配库配置
'DB_CHARSET'=> 'utf8mb4'
,没有问题,线上就不行。(线上php5.6,线下php7)线上修改DB连接用
mysql:host=localhost;dbname=db_demo;charset=utf8mb4
依然报错,改用PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8mb4"
就成功了。ps: 一直用laravel,旧的项目用TP。总之放弃TP,方能归一,