logo

Standard PHP Library(SPL) SplFileInfoクラス編

ヒューマンリソシア株式会社はコラム「Standard PHP Library(SPL) SplFileInfoクラス編」を公開しました。

###

DirectoryIteratorつながりで、今回はSplFileInfoクラスを見ていきましょう。

単体でSplFileInfoクラスを使う場合、ファイル名を渡して、以下のようにインスタンスを作成します。

$file = new SplFileInfo(__FILE__);

SplFileInfoですが、かなり色々なメソッドを持っています。
そのほとんどは、PHPの標準関数で提供されているものでもあるのですが。「1つのファイル、というインスタンス」を持ち回ってプログラムが書けるので、オブジェクト指向プログラミングになれている人は、SplFileInfoクラスでインスタンス作って…という流れのほうが、書きやすいし読みやすいかもしれませんね。

では、実際にわたしがよく使うメソッドを中心に、いくつかご紹介差し上げたく思います。
「内容が偏ってるよねぇ」と思った場合、それは多分「筆者の業務に偏りがある」だけなので、
その辺は生暖かく見守っていただければ幸いです。

$file = new SplFileInfo(__FILE__);
var_dump($file->getATime());
var_dump($file->getCTime());
var_dump($file->getMTime());

上から順番に「ファイルの最終アクセス時刻(ATime)」「inode 変更時刻(CTime)」「最終変更時刻(MTime)」を取得します。
なお「inode 変更時刻」ってのは、パーミッション、所有者、グループなどが変更されたタイミングですね。inode自体については、ファイルシステムそのものを学ぶと出てくる概念です。一度は調べて、ファイルが「どのように」磁気媒体その他に格納されているか、を知っておくと非常に便利だったり有利だったりしますね。

この続きは以下をご覧ください
リンク

関連情報
http://resocia.jp/
本プレスリリースは発表元企業よりご投稿いただいた情報を掲載しております。
お問い合わせにつきましては発表元企業までお願いいたします。