Properties

$default_permission

$default_permission : 

ファイルおよびディレクトリ操作時のデフォルトパーミッション

Type

$filesystem_encoding

$filesystem_encoding : 

ファイルシステムの文字セット

Type

Methods

__construct()

__construct(object  $conf = null) 

コンストラクタ

Parameters

object $conf

設定オブジェクト

is_writable()

is_writable(string  $path) : boolean

書き込み/上書きしてよいアイテムか検証する。

Parameters

string $path

検証対象のパス

Returns

boolean —

書き込み可能な場合 true、不可能な場合に false を返します。

is_readable()

is_readable(string  $path) : boolean

読み込んでよいアイテムか検証する。

Parameters

string $path

検証対象のパス

Returns

boolean —

読み込み可能な場合 true、不可能な場合に false を返します。

is_file()

is_file(string  $path) : boolean

ファイルが存在するかどうか調べる。

Parameters

string $path

検証対象のパス

Returns

boolean —

ファイルが存在する場合 true、存在しない場合、またはディレクトリが存在する場合に false を返します。

is_dir()

is_dir(string  $path) : boolean

ディレクトリが存在するかどうか調べる。

Parameters

string $path

検証対象のパス

Returns

boolean —

ディレクトリが存在する場合 true、存在しない場合、またはファイルが存在する場合に false を返します。

file_exists()

file_exists(string  $path) : boolean

ファイルまたはディレクトリが存在するかどうか調べる。

Parameters

string $path

検証対象のパス

Returns

boolean —

ファイルまたはディレクトリが存在する場合 true、存在しない場合に false を返します。

mkdir()

mkdir(string  $dirpath, integer  $perm = null) : boolean

ディレクトリを作成する。

Parameters

string $dirpath

作成するディレクトリのパス

integer $perm

作成するディレクトリに与えるパーミッション

Returns

boolean —

成功時に true、失敗時に false を返します。

mkdir_r()

mkdir_r(string  $dirpath, integer  $perm = null) : boolean

ディレクトリを作成する(上層ディレクトリも全て作成)

Parameters

string $dirpath

作成するディレクトリのパス

integer $perm

作成するディレクトリに与えるパーミッション

Returns

boolean —

成功時に true、失敗時に false を返します。

rm()

rm(string  $path) : boolean

ファイルやディレクトリを中身ごと完全に削除する。

このメソッドは、ファイルやシンボリックリンクも削除します。 ディレクトリを削除する場合は、中身ごと完全に削除します。 シンボリックリンクは、その先を追わず、シンボリックリンク本体のみを削除します。

Parameters

string $path

対象のパス

Returns

boolean —

成功時に true、失敗時に false を返します。

rmdir()

rmdir(string  $path) : boolean

ディレクトリを削除する。

このメソッドはディレクトリを削除します。 中身のない、空のディレクトリ以外は削除できません。

Parameters

string $path

対象ディレクトリのパス

Returns

boolean —

成功時に true、失敗時に false を返します。

rmdir_r()

rmdir_r(string  $path) : boolean

ディレクトリを再帰的に削除する。

このメソッドはディレクトリを再帰的に削除します。 中身のない、空のディレクトリ以外は削除できません。

Parameters

string $path

対象ディレクトリのパス

Returns

boolean —

成功時に true、失敗時に false を返します。

save_file()

save_file(string  $filepath, string  $content, integer  $perm = null) : boolean

ファイルを上書き保存する。

このメソッドは、$filepath にデータを保存します。 もともと保存されていた内容は破棄され、新しいデータで上書きします。

Parameters

string $filepath

保存先ファイルのパス

string $content

保存する内容

integer $perm

保存するファイルに与えるパーミッション

Returns

boolean —

成功時に true、失敗時に false を返します。

read_file()

read_file(string  $path) : string

ファイルの中身を文字列として取得する。

Parameters

string $path

ファイルのパス

Returns

string —

ファイル $path の内容

is_newer_a_than_b()

is_newer_a_than_b(string  $path_a, string  $path_b) : boolean|null

ファイルの更新日時を比較する。

Parameters

string $path_a

比較対象A

string $path_b

比較対象B

Returns

boolean|null —

$path_a の方が新しかった場合に true$path_b の方が新しかった場合に false、 同時だった場合に null を返します。

いずれか一方、または両方のファイルが存在しない場合、次のように振る舞います。

  • 両方のファイルが存在しない場合 = null
  • $path_a が存在せず、$path_b は存在する場合 = false
  • $path_a が存在し、$path_b は存在しない場合 = true

rename()

rename(string  $original, string  $newname) : boolean

ファイル名/ディレクトリ名を変更する。

Parameters

string $original

現在のファイルまたはディレクトリ名

string $newname

変更後のファイルまたはディレクトリ名

Returns

boolean —

成功時 true、失敗時 false を返します。

rename_f()

rename_f(string  $original, string  $newname) : boolean

ファイル名/ディレクトリ名を強制的に変更する。

移動先の親ディレクトリが存在しない場合にも、親ディレクトリを作成して移動するよう試みます。

Parameters

string $original

現在のファイルまたはディレクトリ名

string $newname

変更後のファイルまたはディレクトリ名

Returns

boolean —

成功時 true、失敗時 false を返します。

get_realpath()

get_realpath(string  $path, string  $cd = '.') : string

絶対パスを得る。

パス情報を受け取り、スラッシュから始まるサーバー内部絶対パスに変換して返します。

このメソッドは、PHPの realpath() と異なり、存在しないパスも絶対パスに変換します。

Parameters

string $path

対象のパス

string $cd

カレントディレクトリパス。 実在する有効なディレクトリのパス、または絶対パスの表現で指定される必要があります。 省略時、カレントディレクトリを自動採用します。

Returns

string —

絶対パス

get_relatedpath()

get_relatedpath(string  $path, string  $cd = '.') : string

相対パスを得る。

パス情報を受け取り、ドットスラッシュから始まる相対絶対パスに変換して返します。

Parameters

string $path

対象のパス

string $cd

カレントディレクトリパス。 実在する有効なディレクトリのパス、または絶対パスの表現で指定される必要があります。 省略時、カレントディレクトリを自動採用します。

Returns

string —

相対パス

pathinfo()

pathinfo(string  $path) : array

パス情報を得る。

Parameters

string $path

対象のパス

Returns

array —

パス情報

get_basename()

get_basename(string  $path) : string

パス情報から、ファイル名を取得する。

Parameters

string $path

対象のパス

Returns

string —

抜き出されたファイル名

trim_extension()

trim_extension(string  $path) : string

パス情報から、拡張子を除いたファイル名を取得する。

Parameters

string $path

対象のパス

Returns

string —

拡張子が除かれたパス

get_dirpath()

get_dirpath(string  $path) : string

ファイル名を含むパス情報から、ファイルが格納されているディレクトリ名を取得する。

Parameters

string $path

対象のパス

Returns

string —

親ディレクトリのパス

get_extension()

get_extension(string  $path) : string

パス情報から、拡張子を取得する。

Parameters

string $path

対象のパス

Returns

string —

拡張子

read_csv()

read_csv(string  $path, array  $options = array()) : array|boolean

CSVファイルを読み込む。

Parameters

string $path

対象のCSVファイルのパス

array $options

オプション

  • delimiter = 区切り文字(省略時、カンマ)
  • enclosure = クロージャー文字(省略時、ダブルクオート)
  • size = 一度に読み込むサイズ(省略時、10000)
  • charset = 文字セット(省略時、UTF-8)

Returns

array|boolean —

読み込みに成功した場合、行列を格納した配列、失敗した場合には false を返します。

mk_csv()

mk_csv(array  $array, array  $options = array()) : string

配列をCSV形式に変換する。

改行コードはLFで出力されます。

Parameters

array $array

2次元配列

array $options

オプション

  • charset = 文字セット(省略時、UTF-8)

Returns

string —

生成されたCSV形式のテキスト

copy()

copy(string  $from, string  $to, integer  $perm = null) : boolean

ファイルを複製する。

Parameters

string $from

コピー元ファイルのパス

string $to

コピー先のパス

integer $perm

保存するファイルに与えるパーミッション

Returns

boolean —

成功時に true、失敗時に false を返します。

copy_r()

copy_r(string  $from, string  $to, integer  $perm = null) : boolean

ディレクトリを複製する(下層ディレクトリも全てコピー)

Parameters

string $from

コピー元ファイルのパス

string $to

コピー先のパス

integer $perm

保存するファイルに与えるパーミッション

Returns

boolean —

成功時に true、失敗時に false を返します。

chmod()

chmod(string  $filepath, integer  $perm = null) : boolean

パーミッションを変更する。

Parameters

string $filepath

対象のパス

integer $perm

保存するファイルに与えるパーミッション

Returns

boolean —

成功時に true、失敗時に false を返します。

get_permission()

get_permission(string  $path) : integer|boolean

パーミッション情報を調べ、3桁の数字で返す。

Parameters

string $path

対象のパス

Returns

integer|boolean —

成功時に 3桁の数字、失敗時に false を返します。

ls()

ls(string  $path) : array|boolean

ディレクトリにあるファイル名のリストを配列で返す。

Parameters

string $path

対象ディレクトリのパス

Returns

array|boolean —

成功時にファイルまたはディレクトリ名の一覧を格納した配列、失敗時に false を返します。

compare_and_cleanup()

compare_and_cleanup(string  $target, string  $comparison) : boolean

ディレクトリの内部を比較し、$comparisonに含まれない要素を$targetから削除する。

Parameters

string $target

クリーニング対象のディレクトリパス

string $comparison

比較するディレクトリのパス

Returns

boolean —

成功時 true、失敗時 false を返します。

sync_dir()

sync_dir(string  $path_sync_from, string  $path_sync_to) : boolean

ディレクトリを同期する。

Parameters

string $path_sync_from

同期元ディレクトリ

string $path_sync_to

同期先ディレクトリ

Returns

boolean —

常に true を返します。

remove_empty_dir()

remove_empty_dir(string  $path, array  $options = array()) : boolean

指定されたディレクトリ以下の、全ての空っぽのディレクトリを削除する。

Parameters

string $path

ディレクトリパス

array $options

オプション

Returns

boolean —

成功時 true、失敗時 false を返します。

compare_dir()

compare_dir(string  $dir_a, string  $dir_b, array  $options = array()) : boolean

指定された2つのディレクトリの内容を比較し、まったく同じかどうか調べる。

Parameters

string $dir_a

比較対象ディレクトリA

string $dir_b

比較対象ディレクトリB

array $options

オプション

bool $options['compare_filecontent']
ファイルの中身も比較するか?
bool $options['compare_emptydir']
空っぽのディレクトリの有無も評価に含めるか?

Returns

boolean —

同じ場合に true、異なる場合に false を返します。

is_unix()

is_unix() : boolean

サーバがUNIXパスか調べる。

Returns

boolean —

UNIXパスなら true、それ以外なら false を返します。

is_windows()

is_windows() : boolean

サーバがWindowsパスか調べる。

Returns

boolean —

Windowsパスなら true、それ以外なら false を返します。

normalize_path()

normalize_path(string  $path) : string

パスを正規化する。

受け取ったパスを、スラッシュ区切りの表現に正規化します。 Windowsのボリュームラベルが付いている場合は削除します。 URIスキーム(http, https, ftp など) で始まる場合、2つのスラッシュで始まる場合(//www.example.com/abc/ など)、これを残して正規化します。

  • 例: \a\b\c.html/a/b/c.html バックスラッシュはスラッシュに置き換えられます。
  • 例: /a/b////c.html/a/b/c.html 余計なスラッシュはまとめられます。
  • 例: C:\a\b\c.html/a/b/c.html ボリュームラベルは削除されます。
  • 例: http://a/b/c.htmlhttp://a/b/c.html URIスキームは残されます。
  • 例: //a/b/c.html//a/b/c.html ドメイン名は残されます。

Parameters

string $path

正規化するパス

Returns

string —

正規化されたパス

localize_path()

localize_path(string  $path) : string

パスをOSの標準的な表現に変換する。

受け取ったパスを、OSの標準的な表現に変換します。

  • スラッシュとバックスラッシュの違いを吸収し、DIRECTORY_SEPARATOR に置き換えます。

Parameters

string $path

ローカライズするパス

Returns

string —

ローカライズされたパス

convert_encoding()

convert_encoding(mixed  $text, string  $to_encoding = null, string  $from_encoding = null) : string

受け取ったテキストを、ファイルシステムエンコードに変換する。

Parameters

mixed $text

テキスト

string $to_encoding

文字セット(省略時、内部文字セット)

string $from_encoding

変換前の文字セット

Returns

string —

文字セット変換後のテキスト

convert_crlf()

convert_crlf(mixed  $text, string  $crlf = null) : string

受け取ったテキストを、指定の改行コードに変換する。

Parameters

mixed $text

テキスト

string $crlf

改行コード名。CR|LF(default)|CRLF

Returns

string —

改行コード変換後のテキスト

convert_filesystem_encoding()

convert_filesystem_encoding(mixed  $text) : string

受け取ったテキストを、ファイルシステムエンコードに変換する。

Parameters

mixed $text

テキスト

Returns

string —

文字セット変換後のテキスト