ホームページ  >  記事  >  バックエンド開発  >  PHPの文字化けコードに関連する問題

PHPの文字化けコードに関連する問題

WBOY
WBOYオリジナル
2016-06-13 13:39:29820ブラウズ

PHP コード文字化け問題
PHP でアプリケーション text.exe を cmd コマンドで実行したところ、「実行成功」と表示されるはずですが、cmd では正常に表示されるのですが、ブラウザでは文字化けしてしまいました。 phpファイルのmetaタグではcharsetがutf-8となっており、ブラウザの文字エンコーディングもutf-8となっていますが、ブラウザの文字エンコーディングをGBKに変更すると正常に「実行成功」の4文字が表示されます。が、ページ上の他の漢字が文字化けしてしまいます。どうやって対処すればいいのでしょうか?

-----解決策--------------------------------
ファイルのエンコーディングも utf-8 形式に変更されます ('実行成功')。
------解決策---------
//データベースのエンコーディングが gbk であることを示します
データベースのエンコーディングはファイルのエンコーディングと同じである必要があります。ブラウザのエンコーディングが一致していれば、文字化けは発生しません。
mysql クエリの前にこの文を追加できます。声明。
------解決策------
代わりに「実行成功」が文字列として取得された場合スクリプト内のカスタム文字列を変更してから、iconv を使用してエンコーディングを変換してみてください。
------解決策---------
先頭に
ヘッダーを入力します。ファイル ("Content-Type:text/html;charset=utf-8");
------解決策---------
ob_start();
cmd コマンドの実行 作成されましたアプリケーション text.exe
$s = ob_get_clean();
echo iconv('gbk', 'utf-8', $s);

------解決策----------------------
cmd はデフォルトで gbk でエンコードされるようです。 utf-8 と競合します。そのためコードが文字化けしてしまいます。

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