XL. ファイルシステム関数

要件

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

インストール手順

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

実行時設定

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

表 1. ファイルシステムおよびストリーム設定オプション

名前 デフォルト 変更の可否 変更履歴
allow_url_fopen "1" PHP_INI_SYSTEM PHP_INI_ALL は PHP <= 4.3.4 で利用可能です。 PHP 4.0.4 から利用可能です。
allow_url_include "0" 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() , 参照LXIII, イメージ関数(image) 拡張モジュールの 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 )

FILE_APPEND ( integer )

FILE_IGNORE_NEW_LINES ( integer )

FILE_SKIP_EMPTY_LINES ( integer )

参考

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

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

目次
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  -- ファイルを削除する