Forum und email

ファイルシステム関数

導入

要件

この拡張モジュールを構築するには外部ライブラリを必要としませんが、 Linux 上で LFS (ラージファイル) をサポートする PHP を希望する場合は、 最新の glibc を入手し、次のコンパイラフラグ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 を付けて PHP をコンパイルする必要があります。

インストール手順

PHP コアに含まれるため、 追加のインストール無しで使用できます。

実行時設定

php.ini の設定により動作が変化します。

ファイルシステムおよびストリーム設定オプション
名前 デフォルト 変更の可否 変更履歴
allow_url_fopen "1" PHP_INI_ALL PHP <= 4.3.4 では PHP_INI_ALL、PHP < 6 では PHP_INI_SYSTEM。 PHP 4.0.4 から利用可能です。
allow_url_include "0" PHP_INI_ALL PHP 5 では PHP_INI_SYSTEM。PHP 5.2.0 から利用可能です。
user_agent NULL PHP_INI_ALL PHP 4.3.0 から利用可能です。
default_socket_timeout "60" PHP_INI_ALL PHP 4.3.0 から利用可能です。
from "" PHP_INI_ALL  
auto_detect_line_endings "0" PHP_INI_ALL PHP 4.3.0 から利用可能です。

以下に設定ディレクティブに関する 簡単な説明を示します。

allow_url_fopen boolean

このオプションにより、URL対応のfopenラッパーが使用可能となり、 ファイルのようにURLオブジェクトをアクセスできるようになります。 デフォルトのラッパーが、ftpまたはhttpプロトコルを用いて リモートファイルに アクセスするために提供されています。zlibのようないくつかの拡張モジュールが ラッパーを追加することがあります。

注意: この設定はセキュリティ上の理由で php.ini 中でのみ設定可能です。

注意: このオプションは、バージョン4.0.3のリリース直後に追加されました。 4.0.3を含む以前のバージョンでは、この機能は、設定スイッチ --disable-url-fopen-wrapper を使用することに より、コンパイル時にのみ無効にすることができます。

警告

PHP 4.3より前のWindows版では、以下の関数は、リモートファイルの アクセスをサポートしません。: include(), include_once(), require(), require_once(), イメージ 拡張モジュールの imagecreatefromXXX

allow_url_include boolean

このオプションを指定すると include()include_once()require()require_once() で URL 対応の fopen ラッパーが使用できるようになります。

注意: この設定を使用するには、allow_url_fopen が on でないといけません。

user_agent string

送信する PHP 用のユーザエージェントを定義します。

default_socket_timeout integer

ソケットベースのストリームのデフォルトの有効時間(単位は秒)を定義します。

注意: この設定は、PHP 4.3で追加されました。

from string

匿名ftp用パスワード(自分のemailアドレス)を定義します。

auto_detect_line_endings boolean

onにした場合、PHPは fgets() および file() により読み込まれたデータを評価し、UNIX、MS-DOS、Machintoshの行末 表記を使用しているかどうかを調べます。

これにより、PHPがMacintoshシステムと相互運用できるようになりますが、 デフォルトはOffとなっています。これは、最初の行の行末表記を検出 する際にごく僅かな性能劣化があるためと、UNIXシステムのもとで復改 文字を項目セパレータとして使用している人が従来のバージョンと互換 性がない動作であると感じる可能性があるためです。

注意: この設定オプションは、PHP 4.3で追加されました。

リソース型

定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

GLOB_BRACE (integer)
GLOB_ONLYDIR (integer)
GLOB_MARK (integer)
GLOB_NOSORT (integer)
GLOB_NOCHECK (integer)
GLOB_NOESCAPE (integer)
PATHINFO_DIRNAME (integer)
PATHINFO_BASENAME (integer)
PATHINFO_EXTENSION (integer)
PATHINFO_FILENAME (integer)
PHP 5.2.0 以降。
FILE_USE_INCLUDE_PATH (integer)
filenameinclude_path から探します (PHP 5 以降)。
FILE_APPEND (integer)
既存のファイルに追記します。
FILE_IGNORE_NEW_LINES (integer)
EOL (行末) 文字を取り除きます (PHP 5 以降)。
FILE_SKIP_EMPTY_LINES (integer)
空行を読み飛ばします (PHP 5 以降)。
FILE_BINARY (integer)
バイナリモード (PHP 6 以降)。
FILE_TEXT (integer)
テキストモード (PHP 6 以降)。

参考

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

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

目次

  • basename — パス中のファイル名の部分を返す
  • chgrp — ファイルのグループを変更する
  • chmod — ファイルのモードを変更する
  • chown — ファイルの所有者を変更する
  • clearstatcache — ファイルのステータスのキャッシュをクリアする
  • copy — ファイルをコピーする
  • delete — unlink か unset を参照してください
  • dirname — パス中のディレクトリ名の部分を返す
  • disk_free_space — ディレクトリの利用可能なスペースを返す
  • disk_total_space — ディレクトリの全体サイズを返す
  • diskfreespace — disk_free_space のエイリアス
  • fclose — オープンされたファイルポインタをクローズする
  • feof — ファイルポインタがファイル終端に達しているかどうか調べる
  • fflush — 出力をファイルにフラッシュする
  • fgetc — ファイルポインタから1文字取り出す
  • fgetcsv — ファイルポインタから行を取得し、CSVフィールドを処理する
  • fgets — ファイルポインタから 1 行取得する
  • fgetss — ファイルポインタから 1 行取り出し、HTML タグを取り除く
  • file_exists — ファイルまたはディレクトリが存在するかどうか調べる
  • file_get_contents — ファイルの内容を全て文字列に読み込む
  • file_put_contents — 文字列をファイルに書き込む
  • file — ファイル全体を読み込んで配列に格納する
  • fileatime — ファイルの最終アクセス時刻を取得する
  • filectime — ファイルの inode 変更時刻を取得する
  • filegroup — ファイルのグループを取得する
  • fileinode — ファイルの inode を取得する
  • filemtime — ファイルの更新時刻を取得する
  • fileowner — ファイルの所有者を取得する
  • fileperms — ファイルのパーミッションを取得する
  • filesize — ファイルのサイズを取得する
  • filetype — ファイルタイプを取得する
  • flock — 汎用のファイルロックを行う
  • fnmatch — ファイル名がパターンにマッチするか調べる
  • fopen — ファイルまたは URL をオープンする
  • fpassthru — ファイルポインタ上に残っているすべてのデータを出力する
  • fputcsv — 行を CSV 形式にフォーマットし、ファイルポインタに書き込む
  • fputs — fwrite のエイリアス
  • fread — バイナリセーフなファイルの読み込み
  • fscanf — フォーマットに基づきファイルからの入力を処理する
  • fseek — ファイルポインタを移動する
  • fstat — オープンしたファイルポインタからファイルに関する情報を取得する
  • 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 — 設定ファイルをパースする
  • pathinfo — ファイルパスに関する情報を返す
  • pclose — プロセスのファイルポインタをクローズする
  • popen — プロセスへのファイルポインタをオープンする
  • readfile — ファイルを出力する
  • readlink — シンボリックリンク先を返す
  • realpath — 絶対パス名を返す
  • rename — ファイルをリネームする
  • rewind — ファイルポインタの位置を先頭に戻す
  • rmdir — ディレクトリを削除する
  • set_file_buffer — stream_set_write_buffer のエイリアス
  • stat — ファイルに関する情報を取得する
  • symlink — シンボリックリンクを作成する
  • tempnam — 一意なファイル名を生成する
  • tmpfile — テンポラリファイルを作成する
  • touch — ファイルの最終アクセス時刻および最終更新日をセットする
  • umask — 現在の umask を変更する
  • unlink — ファイルを削除する