ホームページ > バックエンド開発 > PHPチュートリアル > PHP utf-8 と gb2312 エンコーディング間の文字化けコード変換の問題_PHP チュートリアル

PHP utf-8 と gb2312 エンコーディング間の文字化けコード変換の問題_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:56:04
オリジナル
1158 人が閲覧しました

php + mssql をしばらく使用した後、mssql のエンコーディングのサポートがあまり良くないように感じます (実際、まだよくわかりません) が、まだデータベースを緊急に変更する必要がなかったので、できることは今日は、データを送信するときに再びエラーが表示されます。

php + mssql をしばらく使用した後、mssql のエンコーディングのサポートがあまり良くないように感じます (実際、まだよくわかりません) が、まだデータベースを緊急に変更する必要がなかったので、できることは今日は、データを送信するときに再びエラーが表示されます。

送信したntextフィールドには約220KBと大量の内容が含まれていたため、記事が長すぎることによるエラーだと勘違いしてしまいました。 PHP の設定を確認すると、PHP の mssql.textsize のサポートがすでに 400 K であることがわかりました。なぜまだエラーが発生するのでしょうか?エラーをオンにしてみたら、長すぎる記事ではなく、エンコードによるエラーだったことが分かりました。エラーは次のとおりです:

コードは次のとおりです コードをコピー
通知: iconv() [function.iconv]:....の入力文字列で不正な文字が検出されました。

私の英語は本当に下手ですが、iconv() 関数に問題があることだけは知っています。 Google 翻訳によると、入力文字列に不正な文字が検出されました。突然の気づき。

インターネットにアクセスして、エラー メッセージに基づいて問題の解決策を見つけます。つまり、iconv() の 2 番目のパラメータに //IGNORE を追加します。これは、エラーを無視することを意味します。コードは次のとおりです:

コードは次のとおりです コードをコピー
iconv("utf-8", "gbk//IGNORE", $str);

テストされ、正常に送信されました。

注: ネチズンの経験によると、gbk の範囲は gb2313 よりも大きいため、gbk を使用したエンコードのエラー率は gb2313 のエラー率よりも小さくなります。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632194.html技術記事 php + mssql をしばらく使っていると、mssql のコーディングのサポートがあまり良くないように感じますが (実際にはまだよくわかりません)、まだデータベースを緊急に変更する必要がなかったので、これでなんとかするしかありません。 . 今日...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート