タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

file_get_contentsに関するsyun128のブックマーク (2)

  • PHPでFC2ブログからデータを取得するときに文字化けする問題 | 備忘録

    FC2ブログのHTMLデータを取得する処理を書いてたら、妙な文字化けを起こすことがあることに気付いた。 しかも再現したりしなかったりで、なんじゃい こりゃあ? file_get_content でやっても、cURL でやっても発生する。 同じページをひたすら取得して先頭40bytesだけ表示するプログラムをループ実行させたら、ちゃんと読めるときと読めないときがある。わけがわからないよ… livedoor blog では問題なくて、fc2ブログだけで発生。 で、結論としては、FC2ブログのサーバ側が gzip 形式でデータを圧縮して送りつけてたのが原因でした。 ・・・え?(;゚Д゚) PHPって、デフォルトでデコードしてくれないの?? ▼対策:cURL の場合curl_setopt( $ch, CURLOPT_ENCODING, "gzip" );してから実行するとちゃんとデコードしてくれま

    PHPでFC2ブログからデータを取得するときに文字化けする問題 | 備忘録
    syun128
    syun128 2012/05/17
    gzipじゃないのが欲しい時
  • [メモ] PHPのfile_get_contentsを、HTTPリクエストに使うときのTIPS ::ハブろぐ

    file_get_contentsにまつわるTIPS $res = file_get_contents('http://example.com'); file_get_contentsはローカルのファイルパスだけでなく、URLを入れることでHTTPリクエストを送信することもできます。しかし、その仕様は奥深く難解であり、TIPSが数多く存在する関数でもあります。今回はそんなfile_get_contentsにまつわるTIPSをまとめてみます。 PHP5.3.3で確認していますが、大まかな挙動は他の5.x系でもそんなに変わらないはず。 仕様的なこと 2xx, 3xx以外のレスポンスボディを取得しない HTTPステータスコードが204または304でなければレスポンスボディを含んでいる可能性があります。しかし、file_get_contentsは、2xx, 3xxのみ( それが204や304であっ

    [メモ] PHPのfile_get_contentsを、HTTPリクエストに使うときのTIPS ::ハブろぐ
  • 1