Home > PHP > [php]外部ファイル取得系

[php]外部ファイル取得系

phpで外部に置いたファイルを読み込んで取り込むには方法。
地味に色々方法があるんだけど、忘れちゃうんだよね、のメモ。

まず基本。

全体の取り込み

$data='';
if (file_exists($read_file)){
    if( ($f = fopen($read_file,'r'))===true ){
        while(!feof($f)){
            $data.=fread($f,$size);
        }
    }
    fclose($f);
}

読込限定とかその辺のオプションは、マニュアル参照ってことで。
無かったら追加(+)のオプションが付いてるときは、file_exists()で確認しなくても、いいといやいい。
fread()でなくて、fgets()でもいい。

ファイル全体を一気に読み込んで全て文字列に格納

$data = file_get_contents($read_file);

行数が配列数になる。

ファイル全体を一気に読み込んで1行ごと配列に格納

$array_data = file($read_file, FILE_IGNORE_NEW_LINES);

『FILE_IGNORE_NEW_LINES』を指定することで、空行を読み飛ばしてる

ファイル全体を一気に読み込み、同時に出力

readfile($read_file);

出力するまでがセット。

CSVを取り込む

fread()・fgets()の変わりにfgetcsv()を使うとcsvを取り込めるんだけど、
日本語がマルチバイトな文字のせいで、
文字コードが違ったり『"』で囲っていなかったりすることで文字化けが起きてしまう。
それを対応してる人がいた。コレはなんてステキ。
※PHP5でfgetcsvが正常に動作しない : ::yossy.blog::

XMLを取り込む

$f_xml = file_get_contents($read_file);
$xml_parser = xml_parser_create();
xml_parse_into_struct($xml_parser,$f_xml,$array_data);
xml_parser_free($xml_parser);

$read_fileは勿論xmlファイル。

更新@2011.01.04 11:45

タグ: , ,

関連する投稿

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://qooga.jb-jk.net/wp/2009/04/php%e5%a4%96%e9%83%a8%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab%e5%8f%96%e5%be%97%e7%b3%bb/trackback/
Listed below are links to weblogs that reference
http://qooga.jb-jk.net/wp[php]外部ファイル取得系 from MOT:主にプログラム勉強メモ部屋

Home > PHP > [php]外部ファイル取得系

Search
Option
  • Twitter
  • 絵板
Feeds
commercial
Mobile
Meta
Tag Cloud
TOP10
commercial

Return to page top