PHP Conference Nagoya 2025

ファイルシステム 関数

参考

関連する関数については、ディレクトリ およびプログラム実行の節を 参照ください。

リモートファイルとして使用することができる種々のURLラッパーの一覧 と説明については、サポートするプロトコル/ラッパーも参照ください。

目次

  • basename — パスの最後にある名前の部分を返す
  • chgrp — ファイルのグループを変更する
  • chmod — ファイルのモードを変更する
  • chown — ファイルの所有者を変更する
  • clearstatcache — ファイルのステータスのキャッシュをクリアする
  • copy — ファイルをコピーする
  • delete — unlink か unset を参照ください
  • dirname — 親ディレクトリのパスを返す
  • disk_free_space — ファイルシステムあるいはディスクパーティション上で利用可能な領域を返す
  • disk_total_space — ファイルシステムあるいはディスクパーティションの全体サイズを返す
  • diskfreespace — disk_free_space のエイリアス
  • fclose — オープンされたファイルポインタをクローズする
  • fdatasync — データをファイルに同期する(但しメタデータは除く)
  • feof — ファイルポインタがファイル終端に達しているかどうか調べる
  • fflush — 出力をファイルにフラッシュする
  • fgetc — ファイルポインタから1文字取り出す
  • fgetcsv — ファイルポインタから行を取得し、CSVフィールドを処理する
  • fgets — ファイルポインタから 1 行取得する
  • fgetss — ファイルポインタから 1 行取り出し、HTML タグを取り除く
  • file — ファイル全体を読み込んで配列に格納する
  • file_exists — ファイルまたはディレクトリが存在するかどうか調べる
  • file_get_contents — ファイルの内容を全て文字列に読み込む
  • file_put_contents — データをファイルに書き込む
  • fileatime — ファイルの最終アクセス時刻を取得する
  • filectime — ファイルの inode 変更時刻を取得する
  • filegroup — ファイルのグループを取得する
  • fileinode — ファイルの inode を取得する
  • filemtime — ファイルの更新時刻を取得する
  • fileowner — ファイルの所有者を取得する
  • fileperms — ファイルのパーミッションを取得する
  • filesize — ファイルのサイズを取得する
  • filetype — ファイルタイプを取得する
  • flock — 汎用のファイルロックを行う
  • fnmatch — ファイル名がパターンにマッチするか調べる
  • fopen — ファイルまたは URL をオープンする
  • fpassthru — ファイルポインタ上に残っているすべてのデータを出力する
  • fputcsv — 行を CSV 形式にフォーマットし、ファイルポインタに書き込む
  • fputs — fwrite のエイリアス
  • fread — バイナリセーフなファイルの読み込み
  • fscanf — フォーマットに基づきファイルからの入力を処理する
  • fseek — ファイルポインタを移動する
  • fstat — オープンしたファイルポインタからファイルに関する情報を取得する
  • fsync — データをファイルに同期する(メタデータも含む)
  • ftell — ファイルの読み書き用ポインタの現在位置を返す
  • ftruncate — ファイルを指定した長さに丸める
  • fwrite — バイナリセーフなファイル書き込み処理
  • glob — パターンにマッチするパス名を探す
  • is_dir — ファイルがディレクトリかどうかを調べる
  • is_executable — ファイルが実行可能かどうかを調べる
  • is_file — 通常ファイルかどうかを調べる
  • is_link — ファイルがシンボリックリンクかどうかを調べる
  • is_readable — ファイルが存在し、読み込み可能であるかどうかを知る
  • is_uploaded_file — HTTP POST でアップロードされたファイルかどうかを調べる
  • is_writable — ファイルが書き込み可能かどうかを調べる
  • is_writeable — is_writable のエイリアス
  • lchgrp — シンボリックリンクのグループ所有権を変更する
  • lchown — シンボリックリンクの所有者を変更する
  • link — ハードリンクを作成する
  • linkinfo — リンクに関する情報を取得する
  • lstat — ファイルあるいはシンボリックリンクの情報を取得する
  • mkdir — ディレクトリを作る
  • move_uploaded_file — アップロードされたファイルを新しい位置に移動する
  • parse_ini_file — 設定ファイルをパースする
  • parse_ini_string — 設定文字列をパースする
  • pathinfo — ファイルパスに関する情報を返す
  • pclose — プロセスのファイルポインタをクローズする
  • popen — プロセスへのファイルポインタをオープンする
  • readfile — ファイルを出力する
  • readlink — シンボリックリンク先を返す
  • realpath — 正規化された絶対パス名を返す
  • realpath_cache_get — realpath キャッシュ・エントリーを取得
  • realpath_cache_size — realpath キャッシュサイズを取得
  • rename — ファイルをリネームする
  • rewind — ファイルポインタの位置を先頭に戻す
  • rmdir — ディレクトリを削除する
  • set_file_buffer — stream_set_write_buffer のエイリアス
  • stat — ファイルに関する情報を取得する
  • symlink — シンボリックリンクを作成する
  • tempnam — 一意なファイル名を生成する
  • tmpfile — テンポラリファイルを作成する
  • touch — ファイルの最終アクセス時刻および最終更新日をセットする
  • umask — 現在の umask を変更する
  • unlink — ファイルを削除する
add a note

User Contributed Notes 2 notes

up
66
Christian
17 years ago
I just learned that, to specify file names in a portable manner, you DON'T need 'DIRECTORY_SEPARATOR' - just use '/'. This really surprised and shocked me, as until now I typed about a zillion times 'DIRECTORY_SEPARATOR' to stay platform independent - unnecessary. Don't make the same mistake.
up
-2
tunnelareaten at gmail dot com
19 years ago
I made this function to search and/or display files by extension or for a string occurance in the filename. Any comments or enhancements are welcome offcourse. I'll update this function soon.

usage: list_files([string], [string], [int 1 | 0], [int 1 | 0]);

search for extension: list_files([string], [string], [0], [int 1 | 0]);
returns array: $myArray = list_files([string], [string], [0], [0]);
echo result: list_files([string], [string], [0], [1]);

search for string occurance: list_files([string], [string], [1], [int 1 | 0]);
returns array: $myArray = list_files([string], [string], [1], [0]);
echo result: list_files([string], [string], [1], [1]);

<?php

function list_files($directory, $stringSearch, $searchHandler, $outputHandler) {
$errorHandler = false;
$result = array();
if (!
$directoryHandler = @opendir ($directory)) {
echo (
"<pre>\nerror: directory \"$directory\" doesn't exist!\n</pre>\n");
return
$errorHandler = true;
}
if (
$searchHandler === 0) {
while (
false !== ($fileName = @readdir ($directoryHandler))) {
if(@
substr ($fileName, - @strlen ($stringSearch)) === $stringSearch) {
@
array_push ($result, $fileName);
}
}
}
if (
$searchHandler === 1) {
while(
false !== ($fileName = @readdir ($directoryHandler))) {
if(@
substr_count ($fileName, $stringSearch) > 0) {
@
array_push ($result, $fileName);
}
}
}
if ((
$errorHandler === true) && (@count ($result) === 0)) {
echo (
"<pre>\nerror: no filetype \"$fileExtension\" found!\n</pre>\n");
}
else {
sort ($result);
if (
$outputHandler === 0) {
return
$result;
}
if (
$outputHandler === 1) {
echo (
"<pre>\n");
print_r ($result);
echo (
"</pre>\n");
}
}
}

?>
To Top