4年前 (2015-07-17)  其他  抢沙发  61 
文章评分 0 次,平均分 0.0
导语:Brophp框架开发时连接数据库读取UTF8乱码的解决

Brophp框架开发时连接数据库读取UTF8乱码的解决
用brophp框架读取数据库的时候发生乱码,数据库和源码都采用的utf-8编码,按理说不应该出现乱码的。仔细分析应该是出在数据连接时,后来看到一个高手的解答总算弄明白了。英文正常读取而中文乱码,基本上都是字符集的问题。要在PHP端发送set names utf8.声明和数据库握手的时候也使用utf8字符集了。

如果是用pdo连接的修改下在dpdo.class.php就完全解决了

短连接下可以这样修改:
$pdo=new PDO($dsn, USER, PASS, array(PDO::ATTR_PERSISTENT=>false,MYSQL_ATTR_INIT_COMMAND => “SET NAMES ‘utf8′;”));

BORPHP用的是长连接可以参照下面修改

$pdo=new PDO($dsn, USER, PASS, array (PDO::ATTR_PERSISTENT=>true));
$pdo->exec(‘SET NAMES utf8′);

如果是mysqli方式连接数据库就修改下mysqli.class.php也能解决
加上用utf8连接就行了。

$mysqli=new mysqli(HOST, USER, PASS, DBNAME);
$mysqli->query(“SET NAMES ‘utf8′”);




关于

发表评论

表情 格式

暂无评论

登录

忘记密码 ?

切换登录

注册

扫一扫二维码分享