curlで情報取得するときに返り値が文字化けした時の対処法です。
以下の2点を確認します。
- 取得先のHTMLが文字コード「EUC-jp」で書かれてないか?
- レスポンスがgzipで圧縮されていないか?
細かいことは理解できなくても構いません。
次の2つの方法を試してみてください。
① $res=mb_convert_encoding($res, ‘utf-8’, ‘euc-jp’); を追加し、euc-jpからutf-8に変換してから扱う。
② curl_setopt($ch, CURLOPT_ENCODING, “gzip”); を追加し、gzipで圧縮されるのを防ぐ。
※ ①の$resには、curlで取得したデータが入ります。
コメント