ホームページ > バックエンド開発 > PHPチュートリアル > PHP_PHP チュートリアルの file_get_contents によってキャプチャされた中国語の文字化け Web ページの問題を解決する

PHP_PHP チュートリアルの file_get_contents によってキャプチャされた中国語の文字化け Web ページの問題を解決する

WBOY
リリース: 2016-07-13 10:35:38
オリジナル
911 人が閲覧しました

インターネット上の友人によると、サーバーで GZIP 圧縮が有効になっていることが原因である可能性があります。

以下はGzipをオンにしたブログのヘッダー情報です。

リクエストヘッダ情報 元のヘッダ情報

次のようにコードをコピーします
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language zh-cn,zh; q =0.8,en-us;q=0.5,en;q=0.3
接続キープアライブ
Cookie __utma=225240837.787252530.1317310581.1335406161.1335411401.1537; __utmz=225240837.132685 0415.887.3.utmcsr=google|utmccn=(オーガニック)|utmcmd =オーガニック |utmctr=%E4%BB%BB%E4%BD%95%E9%A1%B9%E7%9B%AE%E9%83%BD%E4%B8%8D%E4%BC%9A%E9% 82% A3%E4%B9%88%E7%AE%80%E5%8D%95%20site%3Awww.nowmagic.net=888mj4425p8s0m7s0frre3ovc7; __utmc=225240837.1.10.13354 11401
ホスト www.111cn.net
ユーザー - エージェント Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0


ヘッダー情報からContent-Encoding項目がGzipであることが分かります。

解決策は比較的簡単です。

file_get_contents の代わりにcurlを使用して取得し、curl構成パラメータに追加するだけです

コードは次のとおりです コードをコピーします
curl_setopt($ch, CURLOPT_ENCODING, "gzip");

今日 file_get_contents を使用して写真をキャプチャしたとき、最初はこの問題に気付かず、それを見つけるのに多大な労力を要しました

1. 組み込みの zlib ライブラリを使用する

サーバーに zlib ライブラリがインストールされている場合は、次のコードを使用してコード文字化けの問題を簡単に解決できます。

コードは次のとおりです コードをコピーします
$data = file_get_contents("compress.zlib://".$url);

もちろん、curl モジュールを使用して私の問題を解決することもできます。ここで私はあなたに記事を勧めます。次の記事はあなたにとって興味深いものです

詳細については、http://www.111cn.net/phper/31/58895.htmをご確認ください

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/742586.html技術記事インターネット上の友人によると、サーバーで GZIP 圧縮が有効になっていることが原因である可能性があります。 以下はGzipをONにして閲覧したブログのヘッダー情報です。 リクエストヘッダー情報 元のヘッダー情報コード...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート