オルタナティブ・ブログ > 吉政忠志のベンチャービジネス千里眼 >

IT業界でベンチャービジネスの支援をしている執筆者が日々の活動ログと感じたことを、徒然なるままに書き綴っていきます。

Standard PHP Library(SPL) SplFileObjectクラス編 その2

»

こんばんは。PHP技術者認定機構の吉政でございます。

PHP技術者認定機構の認定スクールであるヒューマンリソシアにて、私が企画支援している親方こと古庄道明氏による、「PHPer上級者になるために知っておきたいこと」の第20回 『Standard PHP Library(SPL) SplFileObjectクラス編 その2 』が公開されています。

###
前回に引き続きSplFileObjectクラスです。
前回は「こーゆーモンだよ」を、ファイル関数と対比するような感じで見ていただきましたが、
今回は「ファイル関数とは対比がしにくいもの」を見ていきたいと思います。

まずは、これ。

$file_obj = new SplFileObject(ファイル名);
$awk = [];
//$awk = array(); // 古いバージョンのPHPの場合はこちらで
foreach($file_obj as $line) {
$awk[] = $line;
}
var_dump($awk);

foreachによるぶん回し、ですね。
SplFileObject はIterator インタフェースを継承しているために、foreachが使えるようになります。
foreachがどんどんどんどん汎用的になっていきますが、知っていれば結構便利ですね。
iterator(イテレータ)について失念をしてしまった方は、コラム10 イテレータ編あたりからを一度読み返していただくとよいかもしれません。

keyメソッドというのがありまして、SplFileObjectクラスのkeyメソッドは「現在の行番号を取得」できます。
ちょっとコードを見てみましょう。

(この続きは以下をご覧ください)
http://resocia.jp/column/512/

Furusyo_human_column_5

Comment(0)