PHP_PHP チュートリアルの PDO での中国語文字化け問題を解決するための補足

WBOY
リリース: 2016-07-21 15:34:28
オリジナル
799 人が閲覧しました

私の環境は appsver パッケージです。

インターネット上の中国語の文字化けを解決する最も一般的なコードは次のとおりです:

最初のコード: PDO::__construct($dsn, $user, $pass, array

(PDO) ::MYSQL_ATTR_INIT_COMMAND => "SET NAMES'utf8';"));

最初の方法を試しましたが、結果は名前フィールドに「C」文字のみが表示されます。その後、中国語が表示されるはずの場所が空白になります。

結果は次のようになります: 図 1 に示すように
PHP_PHP チュートリアルの PDO での中国語文字化け問題を解決するための補足
私が解決する必要があるのは、UTF8 を GBK に直接置き換えることだけです。つまり:

PDO::__construct($dsn, $user, $pass, array( PDO::MYSQL_ATTR_INIT_COMMAND => "SET

NAMES'GBK';"));

レンダリング 2 は次のとおりです:
PHP_PHP チュートリアルの PDO での中国語文字化け問題を解決するための補足

2 番目: PDO::__construct($dsn, $user, $ pass);

PDO::exec("SET NAMES 'utf8';");

私の環境で 2 番目の方法もテストしました。表示効果は図 1 に示すとおりです。この状況が発生した場合は、utf8 を次のように置き換えます。 GBKと表示されます。なお、ここでの PDO:: は $pdo-> に置き換えて使用します。もちろんこれは変数であり、変数名は自分で定義できます。


3 番目の方法: $pdo->query('set names utf8;');
3 番目の方法については、上記の 2 つを読んだ後、utf8 を GBK に置き換える必要があることがわかるはずです。それは正しく表示されます。

これらすべてをテストしました。どちらにしても。ははは。また、ここで中国語の文字化けを解決する方法も紹介しますが、基本的には 3 番目の方法と同じですが、奇妙なのは、この方法はクエリではなく exec を使用することです。は次のとおりです:


$pdo->exec("SET CHARACTER SET GBK");


ははは。 4つの方法をすべて自分で試してみましたが、どうでしょうか。

http://www.bkjia.com/PHPjc/322408.html

www.bkjia.com

http://www.bkjia.com/PHPjc/322408.html技術記事私の環境はappsverパッケージです。中国語の文字化けを解決するためにインターネット上でよく出てくるコードは次のとおりです。最初のコード:PDO::__construct($dsn, $user, $pass, array (PDO::MYSQL_ATTR_INIT_COMMAND = "..
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!