Maison > développement back-end > tutoriel php > thinkphp执行'set names utf8mb4'报错

thinkphp执行'set names utf8mb4'报错

WBOY
Libérer: 2016-10-11 14:23:19
original
2895 Les gens l'ont consulté

运行环境:sae + thinkphp
DB_CHARSET为utf8;(直接设置为utf8mb4会报错,我也不知道为什么。。。)
想支持emoji表情,测试代码如下
public function test(){

<code>    $model = M('');
    $model -> query('set names utf8mb4');
}</code>
Copier après la connexion
Copier après la connexion

错误提示 : [ SQL语句 ] : set names utf8mb4。
求大神给点指导,谢谢!

回复内容:

运行环境:sae + thinkphp
DB_CHARSET为utf8;(直接设置为utf8mb4会报错,我也不知道为什么。。。)
想支持emoji表情,测试代码如下
public function test(){

<code>    $model = M('');
    $model -> query('set names utf8mb4');
}</code>
Copier après la connexion
Copier après la connexion

错误提示 : [ SQL语句 ] : set names utf8mb4。
求大神给点指导,谢谢!

<code>select version();  看下数据库版本,5.5以上才支持utf8mb4
</code>
Copier après la connexion

Mysql::utf8mb4

1、检查下mysql的版本;
mysql 5.5.3 之后的版本,增加utf8mb4字符集;之前的版本要先升级mysql server。
2、MySQL utf8mb4 字符集
修改 /etc/my.cnf

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

重启 MySQL Server、检查字符集

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal