如何解决php sqlite 乱码问题

码农天地 -
如何解决php sqlite 乱码问题

php sqlite乱码的解决办法:首先打开“db.db”表;然后通过查询将结果保存到新数组;接着转换列值;最后将查询到的数据重新处理,并全部强制转换成UTF8即可。

推荐:《PHP视频教程》

Linux系统中关于Sqlite3中文乱码问题及解决办法

新做的一个项目在本地(Win8)测试时没有问题,但传到服务器(Linux)时从Sqlite3数据库查询到的数据中文却是乱码(数据库中是正常的)

将php文件、html文件都设置成统一的utf8还是一样,在网络上也找了各种解决方案都没有任何用.

解决办法:

将查询到的数据重新处理,全部强制转换成UTF8

//打开db.db表
$db = new SQLite3('db.db');
if(!$db){
   echo $db->lastErrorMsg();
   exit;
} else {
}
$keys = array();
$students = array();
//查询
$ret = $db->query("SELECT * from student limit 50");
//将结果保存到新数组
while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
   $keys = array_keys($row);
   //转换列值,防止出现乱码
   foreach($keys as $key){
      $row[$key] = mb_convert_encoding($row[$key],"gb2312","utf-8");
   }
   //添加到新数组
   array_push($students, $row);
}
$db->close();
print_r($students);
特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

Tags 标签

加个好友,技术交流

1628738909466805.jpg