,已知
:代码是tp5所有文件是 UTF8,数据库连接时utf8 输出页面也是utf8 ,发现写入数据库是,查询数据库发现数据库也是乱码,请问怎么解决呢?
相信一开始遇到的人不少,这个问题是由于数据库不编码不统一的问题
在SQL中执行以下命令查看SQL编码信息,发现数据编码没有完全统一导致中文乱码
SHOW VARIABLES LIKE 'character%'命令显示的结果
character_set_client=utf8mb4
character_set_connection=utf8mb4
character_set_database=gbk
character_set_filesystem=binary
character_set_results=utf8mb4
character_set_server=gbk
character_set_syste=utf8
character_sets_dir
/data1/mysql_root/base/share/charsets/解决办法就是把数据库编码统一为,你需要的编码即可,<?php
namespace app\index\controller;
use app\index\model\User as UserModel;
class User
{
// 新增用户数据
public function add()
{
$user = new UserModel;
$user->nickname = '阿斯顿';
$user->email = 'thinkphp@qq.com';
if ($user->save()) {
return '用户[ ' . $user->nickname . ':' . $user->id . ' ]新增成功';
} else {
return $user->getError();
}
}
public function read($id='')
{
$user = UserModel::get($id);
echo $user->nickname . '<br/>';
echo $user->email . '<br/>';
}
} 最佳答案