tomk79/filesystem v1.2.3 API Document

filesystem
in package

tomk79/filesystem core class

Tags
author

Tomoya Koyanagi tomk79@gmail.com

Table of Contents

$default_permission  : mixed
ファイルおよびディレクトリ操作時のデフォルトパーミッション
$filesystem_encoding  : mixed
ファイルシステムの文字セット
__construct()  : mixed
コンストラクタ
chmod()  : bool
パーミッションを変更する。
chmod_r()  : bool
パーミッションを再帰的に変更する。(下層のファイルやディレクトリも全て)
compare_and_cleanup()  : bool
ディレクトリの内部を比較し、$comparisonに含まれない要素を$targetから削除する。
compare_dir()  : bool
指定された2つのディレクトリの内容を比較し、まったく同じかどうか調べる。
convert_crlf()  : string
受け取ったテキストを、指定の改行コードに変換する。
convert_encoding()  : string
受け取ったテキストを、ファイルシステムエンコードに変換する。
copy()  : bool
ファイルを複製する。
copy_r()  : bool
ディレクトリを再帰的に複製する(下層ディレクトリも全てコピー)
file_exists()  : bool
ファイルまたはディレクトリが存在するかどうか調べる。
get_basename()  : string
パス情報から、ファイル名を取得する。
get_dirpath()  : string
ファイル名を含むパス情報から、ファイルが格納されているディレクトリ名を取得する。
get_extension()  : string
パス情報から、拡張子を取得する。
get_permission()  : int|bool
パーミッション情報を調べ、3桁の数字で返す。
get_realpath()  : string
絶対パスを得る。
get_relatedpath()  : string
相対パスを得る。
is_dir()  : bool
ディレクトリが存在するかどうか調べる。
is_file()  : bool
ファイルが存在するかどうか調べる。
is_link()  : bool
シンボリックリンクかどうか調べる。
is_newer_a_than_b()  : bool|null
ファイルの更新日時を比較する。
is_readable()  : bool
読み込んでよいアイテムか検証する。
is_unix()  : bool
サーバがUNIXパスか調べる。
is_windows()  : bool
サーバがWindowsパスか調べる。
is_writable()  : bool
書き込み/上書きしてよいアイテムか検証する。
localize_path()  : string
パスをOSの標準的な表現に変換する。
ls()  : array<string|int, mixed>|bool
ディレクトリにあるファイル名のリストを配列で返す。
mk_csv()  : string
配列をCSV形式に変換する。
mkdir()  : bool
ディレクトリを作成する。
mkdir_r()  : bool
ディレクトリを作成する(上層ディレクトリも全て作成)
normalize_path()  : string
パスを正規化する。
pathinfo()  : array<string|int, mixed>
パス情報を得る。
read_csv()  : array<string|int, mixed>|bool
CSVファイルを読み込む。
read_file()  : string
ファイルの中身を文字列として取得する。
remove_empty_dir()  : bool
指定されたディレクトリ以下の、全ての空っぽのディレクトリを削除する。
rename()  : bool
ファイル名/ディレクトリ名を変更する。
rename_f()  : bool
ファイル名/ディレクトリ名を強制的に変更する。
rm()  : bool
ファイルやディレクトリを中身ごと完全に削除する。
rmdir()  : bool
ディレクトリを削除する。
rmdir_r()  : bool
ディレクトリを再帰的に削除する。
save_file()  : bool
ファイルを上書き保存する。
sync_dir()  : bool
ディレクトリを同期する。
trim_extension()  : string
パス情報から、拡張子を除いたファイル名を取得する。

Properties

$default_permission

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

private mixed $default_permission = array('dir' => 0775, 'file' => 0775)

$filesystem_encoding

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

private mixed $filesystem_encoding = null

Methods

__construct()

コンストラクタ

public __construct([object $conf = null ]) : mixed
Parameters
$conf : object = null

設定オブジェクト

Return values
mixed

chmod()

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

public chmod(string $filepath[, int $perm = null ]) : bool
Parameters
$filepath : string

対象のパス

$perm : int = null

与えるパーミッション

Return values
bool

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

chmod_r()

パーミッションを再帰的に変更する。(下層のファイルやディレクトリも全て)

public chmod_r(string $filepath[, int $perm_file = null ][, int $perm_dir = null ]) : bool

$perm_file$perm_dir が省略された場合は、代わりに初期化時に登録されたデフォルトのパーミッションが与えられます。

第2引数 $perm_dir が省略され、最初の引数 $perm_file だけが与えられた場合は、 ファイルとディレクトリの両方に $perm_file が適用されます。

Parameters
$filepath : string

対象のパス

$perm_file : int = null

ファイルに与えるパーミッション (省略可)

$perm_dir : int = null

ディレクトリに与えるパーミッション (省略可)

Return values
bool

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

compare_and_cleanup()

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

public compare_and_cleanup(string $target, string $comparison) : bool
Parameters
$target : string

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

$comparison : string

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

Return values
bool

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

compare_dir()

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

public compare_dir(string $dir_a, string $dir_b[, array<string|int, mixed> $options = array() ]) : bool
Parameters
$dir_a : string

比較対象ディレクトリA

$dir_b : string

比較対象ディレクトリB

$options : array<string|int, mixed> = array()

オプション

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

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

convert_crlf()

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

public convert_crlf(mixed $text[, string $crlf = null ]) : string
Parameters
$text : mixed

テキスト

$crlf : string = null

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

Return values
string

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

convert_encoding()

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

public convert_encoding(mixed $text[, string $to_encoding = null ][, string $from_encoding = null ]) : string
Parameters
$text : mixed

テキスト

$to_encoding : string = null

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

$from_encoding : string = null

変換前の文字セット

Return values
string

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

copy()

ファイルを複製する。

public copy(string $from, string $to[, int $perm = null ]) : bool
Parameters
$from : string

コピー元ファイルのパス

$to : string

コピー先のパス

$perm : int = null

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

Return values
bool

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

copy_r()

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

public copy_r(string $from, string $to[, int $perm = null ]) : bool

ディレクトリを、含まれる内容ごと複製します。 受け取ったパスがファイルの場合は、単体のファイルが複製されます。

Parameters
$from : string

コピー元ファイルのパス

$to : string

コピー先のパス

$perm : int = null

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

Return values
bool

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

file_exists()

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

public file_exists(string $path) : bool
Parameters
$path : string

検証対象のパス

Return values
bool

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

get_basename()

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

public get_basename(string $path) : string
Parameters
$path : string

対象のパス

Return values
string

抜き出されたファイル名

get_dirpath()

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

public get_dirpath(string $path) : string
Parameters
$path : string

対象のパス

Return values
string

親ディレクトリのパス

get_extension()

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

public get_extension(string $path) : string
Parameters
$path : string

対象のパス

Return values
string

拡張子

get_permission()

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

public get_permission(string $path) : int|bool
Parameters
$path : string

対象のパス

Return values
int|bool

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

get_realpath()

絶対パスを得る。

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

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

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

Parameters
$path : string

対象のパス

$cd : string = '.'

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

Return values
string

絶対パス

get_relatedpath()

相対パスを得る。

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

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

Parameters
$path : string

対象のパス

$cd : string = '.'

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

Return values
string

相対パス

is_dir()

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

public is_dir(string $path) : bool
Parameters
$path : string

検証対象のパス

Return values
bool

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

is_file()

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

public is_file(string $path) : bool
Parameters
$path : string

検証対象のパス

Return values
bool

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

シンボリックリンクかどうか調べる。

public is_link(string $path) : bool
Parameters
$path : string

検証対象のパス

Return values
bool

ファイルがシンボリックリンクの場合 true、存在しない場合、それ以外の場合に false を返します。

is_newer_a_than_b()

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

public is_newer_a_than_b(string $path_a, string $path_b) : bool|null
Parameters
$path_a : string

比較対象A

$path_b : string

比較対象B

Return values
bool|null

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

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

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

is_readable()

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

public is_readable(string $path) : bool
Parameters
$path : string

検証対象のパス

Return values
bool

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

is_unix()

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

public is_unix() : bool
Return values
bool

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

is_windows()

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

public is_windows() : bool
Return values
bool

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

is_writable()

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

public is_writable(string $path) : bool
Parameters
$path : string

検証対象のパス

Return values
bool

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

localize_path()

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

public localize_path(string $path) : string

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

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

ローカライズするパス

Return values
string

ローカライズされたパス

ls()

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

public ls(string $path) : array<string|int, mixed>|bool
Parameters
$path : string

対象ディレクトリのパス

Return values
array<string|int, mixed>|bool

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

mk_csv()

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

public mk_csv(array<string|int, mixed> $array[, array<string|int, mixed> $options = array() ]) : string

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

Parameters
$array : array<string|int, mixed>

2次元配列

$options : array<string|int, mixed> = array()

オプション

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

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

mkdir()

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

public mkdir(string $dirpath[, int $perm = null ]) : bool
Parameters
$dirpath : string

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

$perm : int = null

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

Return values
bool

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

mkdir_r()

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

public mkdir_r(string $dirpath[, int $perm = null ]) : bool
Parameters
$dirpath : string

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

$perm : int = null

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

Return values
bool

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

normalize_path()

パスを正規化する。

public 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
$path : string

正規化するパス

Return values
string

正規化されたパス

pathinfo()

パス情報を得る。

public pathinfo(string $path) : array<string|int, mixed>
Parameters
$path : string

対象のパス

Return values
array<string|int, mixed>

パス情報

read_csv()

CSVファイルを読み込む。

public read_csv(string $path[, array<string|int, mixed> $options = array() ]) : array<string|int, mixed>|bool
Parameters
$path : string

対象のCSVファイルのパス

$options : array<string|int, mixed> = array()

オプション

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

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

read_file()

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

public read_file(string $path) : string
Parameters
$path : string

ファイルのパス

Return values
string

ファイル $path の内容

remove_empty_dir()

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

public remove_empty_dir(string $path[, array<string|int, mixed> $options = array() ]) : bool
Parameters
$path : string

ディレクトリパス

$options : array<string|int, mixed> = array()

オプション

Return values
bool

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

rename()

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

public rename(string $original, string $newname) : bool
Parameters
$original : string

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

$newname : string

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

Return values
bool

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

rename_f()

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

public rename_f(string $original, string $newname) : bool

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

Parameters
$original : string

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

$newname : string

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

Return values
bool

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

rm()

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

public rm(string $path) : bool

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

Parameters
$path : string

対象のパス

Return values
bool

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

rmdir()

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

public rmdir(string $path) : bool

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

Parameters
$path : string

対象ディレクトリのパス

Return values
bool

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

rmdir_r()

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

public rmdir_r(string $path) : bool

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

Parameters
$path : string

対象ディレクトリのパス

Return values
bool

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

save_file()

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

public save_file(string $filepath, string $content[, int $perm = null ]) : bool

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

Parameters
$filepath : string

保存先ファイルのパス

$content : string

保存する内容

$perm : int = null

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

Return values
bool

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

sync_dir()

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

public sync_dir(string $path_sync_from, string $path_sync_to) : bool
Parameters
$path_sync_from : string

同期元ディレクトリ

$path_sync_to : string

同期先ディレクトリ

Return values
bool

常に true を返します。

trim_extension()

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

public trim_extension(string $path) : string
Parameters
$path : string

対象のパス

Return values
string

拡張子が除かれたパス

Search results