PHP Filesystem 簡介
Filesystem 函數允許您訪問和操作檔案系統。
安裝
Filesystem 函數是 PHP 核心的組成部分。無需安裝即可使用這些函數。
Runtime 配置
檔案系統函數的行為受到 php.ini 中設定的影響。
檔案系統配置選項:
| 名稱 |
預設 |
描述 |
可改變 |
| allow_url_fopen |
"1" |
本選項啟用了 URL 形式的 fopen 封裝協議使得可以存取 URL 對象例如檔案。預設的封裝協議提供用 ftp 和 http 協議來訪問遠程檔案,一些擴充庫例如 zlib 可能會註冊更多的封裝協議。 (PHP 4.0.4 版以後可用。) |
PHP_INI_SYSTEM |
| user_agent |
NULL |
定義 PHP 發送的 User-Agent。 (PHP 4.3.0 版以後可用。) |
PHP_INI_ALL |
| default_socket_timeout |
"60" |
基於 socket 的流的預設逾時時間(秒)。 (PHP 4.3.0 版以後可用。) |
PHP_INI_ALL |
| from |
"" |
定義匿名 ftp 的密碼(您的 email 地址)。 |
PHP_INI_ALL |
| auto_detect_line_endings |
"0" |
當設為 On 時,PHP 將檢查通過 fgets() 和 file() 取得的資料中的行結束符號是符合 Unix,MS-DOS,還是 Macintosh 的習慣。 這使得 PHP 可以和 Macintosh 系統互動操作,但是預設值是 Off,因為在檢測第一行的 EOL 習慣時會有很小的效能損失,而且在 Unix 系統下使用斷行符號符號作為項目分隔字元的人們會遭遇向下不相容的行為。 (PHP 4.3.0 版以後可用。) |
PHP_INI_ALL |
Unix / Windows 相容性
當在 Unix 平台上規定路徑時,正斜杠 (/) 用作目錄分隔字元。而在 Windows 平台上,正斜杠 (/) 和反斜線 (/) 均可使用。
PHP Filesystem 函數
PHP:
指示支援該函數的最早的 PHP 版本。
| 函數 |
描述 |
PHP |
| basename() |
返迴路徑中的檔案名稱部分。 |
3 |
| chgrp() |
改變檔案組。 |
3 |
| chmod() |
改變檔案模式。 |
3 |
| chown() |
改變檔案所有者。 |
3 |
| clearstatcache() |
清除檔案狀態緩衝。 |
3 |
| copy() |
複製檔案。 |
3 |
| delete() |
參見 unlink() 或 unset()。 |
|
| dirname() |
返迴路徑中的目錄名稱部分。 |
3 |
| disk_free_space() |
返回目錄的可用空間。 |
4 |
| disk_total_space() |
返回一個目錄的磁碟總容量。 |
4 |
| diskfreespace() |
disk_free_space() 的別名。 |
3 |
| fclose() |
關閉開啟的檔案。 |
3 |
| feof() |
測試檔案指標是否到了檔案結束的位置。 |
3 |
| fflush() |
向開啟的檔案輸出緩衝內容。 |
4 |
| fgetc() |
從開啟的檔案中返回字元。 |
3 |
| fgetcsv() |
從開啟的檔案中解析一行,校正 CSV 欄位。 |
3 |
| fgets() |
從開啟的檔案中返回一行。 |
3 |
| fgetss() |
從開啟的檔案中讀取一行並過濾掉 HTML 和 PHP 標記。 |
3 |
| file() |
把檔案讀入一個數組中。 |
3 |
| file_exists() |
檢查檔案或目錄是否存在。 |
3 |
| file_get_contents() |
將檔案讀入字串。 |
4 |
| file_put_contents |
將字串寫入檔案。 |
5 |
| fileatime() |
返迴文件的上次訪問時間。 |
3 |
| filectime() |
返迴文件的上次改變時間。 |
3 |
| filegroup() |
返迴文件的組 ID。 |
3 |
| fileinode() |
返迴文件的 inode 編號。 |
3 |
| filemtime() |
返迴文件的上次修改時間。 |
3 |
| fileowner() |
檔案的 user ID (所有者)。 |
3 |
| fileperms() |
返迴文件的許可權。 |
3 |
| filesize() |
返迴文件大小。 |
3 |
| filetype() |
返迴文件類型。 |
3 |
| flock() |
鎖定或釋放檔案。 |
3 |
| fnmatch() |
根據指定的模式來匹配檔案名稱或字串。 |
4 |
| fopen() |
開啟一個檔案或 URL。 |
3 |
| fpassthru() |
從開啟的檔案中讀資料,直到 EOF,並向輸出緩衝寫結果。 |
3 |
| fputcsv() |
將行格式化為 CSV 並寫入一個開啟的檔案中。 |
5 |
| fputs() |
fwrite() 的別名。 |
3 |
| fread() |
讀取開啟的檔案。 |
3 |
| fscanf() |
根據指定的格式對輸入進行解析。 |
4 |
| fseek() |
在開啟的檔案中定位。 |
3 |
| fstat() |
返回關於一個開啟的檔案的資訊。 |
4 |
| ftell() |
返迴文件指標的讀/寫位置 |
3 |
| ftruncate() |
將檔案截斷到指定的長度。 |
4 |
| fwrite() |
寫入檔案。 |
3 |
| glob() |
返回一個包含匹配指定模式的檔案名稱/目錄的數組。 |
4 |
| is_dir() |
判斷指定的檔案名稱是否是一個目錄。 |
3 |
| is_executable() |
判斷檔案是否可執行。 |
3 |
| is_file() |
判斷指定檔案是否為常規的檔案。 |
3 |
| is_link() |
判斷指定的檔案是否是串連。 |
3 |
| is_readable() |
判斷檔案是否可讀。 |
3 |
| is_uploaded_file() |
判斷檔案是否是通過 HTTP POST 上傳的。 |
3 |
| is_writable() |
判斷檔案是否可寫。 |
4 |
| is_writeable() |
is_writable() 的別名。 |
3 |
| link() |
建立一個硬串連。 |
3 |
| linkinfo() |
返回有關一個硬串連的資訊。 |
3 |
| lstat() |
返回關於檔案或符號串連的資訊。 |
3 |
| mkdir() |
建立目錄。 |
3 |
| move_uploaded_file() |
將上傳的檔案移動到新位置。 |
4 |
| parse_ini_file() |
解析一個設定檔。 |
4 |
| pathinfo() |
返回關於檔案路徑的資訊。 |
4 |
| pclose() |
關閉有 popen() 開啟的進程。 |
3 |
| popen() |
開啟一個進程。 |
3 |
| readfile() |
讀取一個檔案,並輸出到輸出緩衝。 |
3 |
| readlink() |
返回符號串連的目標。 |
3 |
| realpath() |
返回絕對路徑名。 |
4 |
| rename() |
重名名檔案或目錄。 |
3 |
| rewind() |
倒迴文件指標的位置。 |
3 |
| rmdir() |
刪除空的目錄。 |
3 |
| set_file_buffer() |
設定已開啟檔案的緩衝大小。 |
3 |
| stat() |
返回關於檔案的資訊。 |
3 |
| symlink() |
建立符號串連。 |
3 |
| tempnam() |
建立唯一的臨時檔案。 |
3 |
| tmpfile() |
建立臨時檔案。 |
3 |
| touch() |
設定檔案的訪問和修改時間。 |
3 |
| umask() |
改變檔案的檔案許可權。 |
3 |
| unlink() |
刪除檔案。 |
3 |
PHP Filesystem 常量
PHP:
指示支援該常量的最早的 PHP 版本。
| 常量 |
描述 |
PHP |
| GLOB_BRACE |
|
|
| GLOB_ONLYDIR |
|
|
| GLOB_MARK |
|
|
| GLOB_NOSORT |
|
|
| GLOB_NOCHECK |
|
|
| GLOB_NOESCAPE |
|
|
| PATHINFO_DIRNAME |
|
|
| PATHINFO_BASENAME |
|
|
| PATHINFO_EXTENSION |
|
|
| FILE_USE_INCLUDE_PATH |
|
|
| FILE_APPEND |
|
|
| FILE_IGNORE_NEW_LINES |
|
|
| FILE_SKIP_EMPTY_LINES |
|
|