<?php uses('file'); $file = new File('/test/test.txt'); ?>
<?php $file->create(); ?>
<?php $ret = $file->read(); ?>
<?php $file->append('test!'); ?>
<?php $file->write('test!'); ?>
<?php $file->delete(); ?>
<?php $path = $file->pwd(); ?>
<?php $name = $file->name(); ?>
<?php $ext = $file->ext(); ?>
<?php $info = $file->info(); ?>
<?php $size = $file->size(); ?>
<?php $lastAccess = $file->lastAccess(); ?>
<?php $lastChange = $file->lastChange(); ?>
<?php if(!$file->exists()) { echo 'ファイルが見つかりませんでした。'; } ?>
<?php if(!$file->readable()) { echo 'ファイルに読み込み権限がありません。'; } ?>
<?php if(!$file->writable()) { echo 'ファイルに書き込み権限がありません。'; } ?>
<?php if(!$file->executable()) { echo 'ファイルに実行権限がありません。'; } ?>
<?php $hash = $file->md5(); ?>
<?php $folder = $file->Folder(); ?>
<?php $file->lock = true; ?>
<?php $name = $file->safe(); ?>
以上のようにして危険文字をエスケープしたファイル名が取得できるが、オブジェクトのプロパティには反映されず。
create()は$this->pathからファイルを作成するので、$this->pathを変更してやらないといけない。
コンストラクタの第2引数にtrueを指定した場合にもsafe()は呼ばれているものの、$this->pathには反映せず…。
とりあえずエスケープはファイル名の段階でやらないとスラッシュがエスケープできないので無視することにする。