ホームページ  >  記事  >  バックエンド開発  >  php sqliteの文字化け問題を解決する方法

php sqliteの文字化け問題を解決する方法

藏色散人
藏色散人オリジナル
2020-09-29 10:41:352706ブラウズ

php SQLite 文字化けの解決策: まず「db.db」テーブルを開き、次にクエリを通じて結果を新しい配列に保存し、次に列の値を変換し、最後にクエリされたデータを再処理してすべての変換を強制します。 UTF8にします。

php sqliteの文字化け問題を解決する方法

推奨: 「PHP ビデオ チュートリアル

Linux システムにおける Sqlite3 中国語の文字化けの問題と解決策

新しいプロジェクトをローカル (Win8) でテストする場合は問題ありませんが、サーバー (Linux) に送信すると、Sqlite3 データベースからクエリされた中国語データが文字化けします (データベース内では正常です)

php ファイルと html ファイルの両方を統一 utf8 に設定しますが、同じことは同じです。また、インターネット上でさまざまな解決策を見つけましたが、役に立ちませんでした。

解決策:

Change theデータは再処理され、すべて強制的に 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);
に変換されます。

以上がphp sqliteの文字化け問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。