文件系統函數庫


fread: 位組的方式讀取文件。
fseek: 移動文件指針。
ftell: 取得文件讀寫指針位置。
fwrite: 二進位位方式寫入文件。
set_file_buffer: 配置文件緩衝區大小。
is_dir: 測試文件是否爲目錄。
is_executable: 測試文件是否爲可執行檔。
is_file: 測試文件是否爲正常文件。
is_link: 測試文件是否爲鏈接檔。
is_readable: 測試文件是否可讀取。
is_writeable: 測試文件是否可寫入。
link: 建立硬式鏈接。
linkinfo: 取得鏈接信息。
mkdir: 建立目錄。
pclose: 關閉文件。
popen: 打開文件。
readfile: 輸出文件。
readlink: 返回符號鏈接 (symbolic link) 目標檔。
rename: 更改檔名。
rewind: 重置開檔的讀寫位置指針。
rmdir: 刪除目錄。
stat: 取得文件相關信息。
lstat: 取得鏈接檔相關信息。
symlink: 建立符號鏈接 (symbolic link)。
tempnam: 建立只一的臨時檔。
touch: 配置最後修改時間。
umask: 改變目前的文件屬性遮罩 umask。
unlink: 刪除文件。

basename
返回不含路徑的文件字符串。
語法: string basename(string path);
返回值: 字符串
函數種類: 文件存取

內容說明: 將含路徑及文件字符串中的路徑拿掉,返回只含文件名的字符串。在 Windows 系列的操作系統中,路徑可以是斜線 (/) 或反斜線 (/);在 UNIX 系列的操作系統,路徑爲斜線 (/)。

使用範例
下例中的 $file 變量值爲 "index.php"
<?php
$path = "/home/httpd/html/index.php";
$file = basename($path);
?>
參考 dirname()

chgrp
改變文件所屬的羣組。
語法: int chgrp(string filename, mixed group);
返回值: 整數
函數種類: 文件存取

內容說明 本函數用來改變文件所屬的羣組,只有系統管理員權限可以任意改變文件所屬羣組,其餘的使用者都只能改變本身擁有的文件。成功返回 true,失敗返回 false;在 Windows 系列操作系統中,本函數什麼也不做就返回 true。

參考 chown() chmod()

chmod
改變文件的屬性。
語法: int chmod(string filename, int mode);
返回值: 整數
函數種類: 文件存取

內容說明: 本函數用來改變文件的屬性。成功則返回 true、失敗返回 false。在 mode 值中,系統不會自動將它加入 0 以獲得正確的八進位演算,若要正確的使用,可以用下例第二行的方式。

使用範例
下二行都是將文件屬性設爲 rwxr-xr-x,但以第二行較好。
<?
chmod("/mydir/myfile", 755 ); // mode 爲十進位,可能有潛在錯誤
chmod("/mydir/myfile", 0755 ); // mode 爲八進位,確定的屬性值
?>

參考 chown() chgrp()

chown
改變文件的擁有者。
語法: int chown(string filename, mixed user);
返回值: 整數
函數種類: 文件存取

內容說明: 本函數用來改變文件的擁有人,只有系統管理員權限可以任意改變文件所屬羣組,其餘的使用者都只能改變本身擁有的文件。成功返回 true,失敗返回 false;在 Windows 系列操作系統中,本函數什麼也不做就返回 true。

參考 chmod()

clearstatcache
清除文件狀態快取。
語法: void clearstatcache(void);
返回值: 無
函數種類: 文件存取

內容說明 對操作系統而言,使用 stat() 或 lstat() 二個函數是很耗資源的,尤其是當每次都要重新呼叫 stat() 及 lstat() 二個函數時,更是不經濟的方式。因此爲節省資源,PHP 系統會將文件狀態放在快取內存中,以便隨時使用。而本函數就是提供清除快取內存中文件信息的函數。受本函數影響的函數有 stat()、lstat()、file_exists()、is_writeable()、is_readable()、is_executable()、is_file()、is_dir()、is_link()、filectime()、fileatime()、filemtime()、fileinode()、filegroup()、fileowner()、filesize()、filetype() 及 fileperms() 等十八個。

參考 stat() lstat() file_exists() is_writeable() is_readable() is_executable() is_file() is_dir() is_link() filectime() fileatime() filemtime() fileinode() filegroup() fileowner() filesize() filetype() fileperms()

copy
複製文件。
語法: int copy(string source, string dest);
返回值: 整數
函數種類: 文件存取

內容說明: 本函數用來複制文件。成功則返回 true、失敗返回 false。

使用範例
本例複製文件,失敗時顯示覆制失敗的信息。
<?
if (!copy($file, $file.'.bak')) {
print("複製文件 $file 失敗...<br>/n");
}
?>

參考 rename()

delete
無用的項目。
語法: void delete(string file);
返回值: 無
函數種類: 文件存取

內容說明: 本函數爲無用的項目。要刪除文件用 unlink()、要刪去變量用 unset()。

參考 unlink() unset()

dirname
取得路徑中的目錄名。
語法: string dirname(string path);
返回值: 字符串
函數種類: 文件存取

內容說明: 本函數返回 path 中的目錄名稱。在 Win32 系統中,用斜線 (/) 或者反斜線 (/) 都可以;但是其它的操作系統的路徑都是 (/)。

使用範例
本例返回字符串 $file 爲 "/etc"。
<?
$path = "/etc/hostname";
$file = dirname($path);
?>
參考 basename()

diskfreespace
取得目錄所在的剩餘可用空間。
語法: float diskfreespace(string directory);
返回值: 浮點數
函數種類: 文件存取
內容說明: 本函數用來取得目錄所在儲存裝置的剩餘空間,單位爲位組 (byte)。
使用範例
本例可以知道根目錄的剩餘空間。
<?
$df = diskfreespace("/");
?>

fclose
關閉已打開的文件。
語法: int fclose(int fp);
返回值: 整數
函數種類: 文件存取

內容說明:本函數用來關閉已經打開的文件的指針 fp。成功返回 true,失敗則返回 false。其中的文件指針必須是有效的,且必須是已經用 fopen() 或 fsockopen() 成功開文件的指針。

feof
測試文件指針是否指到文件尾。
語法: int feof(int fp);
返回值: 整數
函數種類: 文件存取

內容說明: 本函數測試文件的指針是否指到文件尾 (End of File, EOF)。若是成功或發生錯誤則返回 true 值,其它情形返回 false 值。其中的文件指針必須是有效的,且必須是已經用 fopen()、popen() 或 fsockopen() 成功開文件的指針。

fgetc
取得文件指針所指的字符。
語法: string fgetc(int fp);
返回值: 字符串
函數種類: 文件存取

內容說明: 本函數取得文件指針所指的字符,返回字符串類型的字符。指針若在 EOF 則返回 false。其中的文件指針必須是有效的,且必須是已經用 fopen()、popen() 或 fsockopen() 成功開文件的指針。

參考 fread() fopen() popen() fsockopen() fgets()

fgetcsv
取得文件指針所指行,並解析 CSV 字段。
語法: array fgetcsv(int fp, int length, string [delimiter]);
返回值: 數組
函數種類: 文件存取

內容說明: 本函數與 fgets() 的功用類似,不同的地方在於本函數用來解析讀取行的 CSV 字段資料,並將其放入數組變量之中。其中的第三個參數 delimiter 若未指定,則使用內定值:逗號。其中的文件指針 fp 必須是有效的,且必須是已經用 fopen()、popen() 或 fsockopen() 成功開文件的指針。而第二個參數 length 的值必須要比 CSV 文件最長一行的字符數還大。本函數若發生錯誤或者到文件尾 (EOF, end of file),則會返回 false 值。若遇到空行,則傳到數組結構的字符爲空字符字段 (null),而不是當作發生錯誤的情形。
使用範例
<?
$row=1;
$fp = fopen("mycsv.csv","r");
while ($data = fgetcsv($fp,1000, ",")) {
$num = count($data);
print "<p>字段 $num 在第 $row 行: <br>";
$row++;
for ( $c=0; $c<$num; $c++ ) print $data[$c] . "<br>";
}
fclose($fp);
?>

fgets
取得文件指針所指的行。
語法: string fgets(int fp, int length);
返回值: 字符串
函數種類: 文件存取
內容說明: 本函數取得文件指針所指的行,返回字符串長度爲行的長度減一。若發生錯誤則返回 false。一般常遇到的陷阱是用 C 語言的經驗來使用本函數,而 EOF 時的處理方式則和 C 語言的 fgets() 不同。其中的文件指針必須是有效的,且必須是已經用 fopen()、popen() 或 fsockopen() 成功開文件的指針。
使用範例
<?php
$fd = fopen("/tmp/myfile.txt", "r");
while ($buffer = fgets($fd, 4096)) {
echo $buffer;
}
fclose($fd);
?>
參考: fread() fopen() popen() fsockopen() fgetc()

fgetss
取得文件指針所指的行,並去掉 HTML 語言標記。
語法: string fgetss(int fp, int length);
返回值: 字符串
函數種類: 文件存取
內容說明
本函數除了 fgets() 的功能,並同時去掉取回字符串中的 HTML 語言及 PHP 語法的標記字符串。
參考: fopen() popen() fsockopen() fgets() strip_tags()

file
將文件全部讀入數組變量中。
語法: array file(string filename);
返回值: 數組
函數種類: 文件存取
內容說明: 本函數與 readfile() 類似,不同的地方爲本函數將文件全部讀出,並輸出到數組的變量中,每行都是單獨的數組元素。
參考: fopen() popen() readfile()

file_exists
檢查文件是否存在。
語法: int file_exists(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數用來測試檢查文件是否存在,返回 true 表示文件存在。返回值放在快取緩衝區中,可以參考 clearstatcache()。

fileatime
取得文件最後的存取時間。
語法: int fileatime(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數返回指定文件 filename 的最後存取時間。返回 false 表示發生錯誤。返回值放在快取緩衝區中,可以參考 clearstatcache()。

filectime
取得文件最後的改變時間。
語法: int filectime(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數返回指定文件 filename 的 inode 最後改變時間。返回 false 表示發生錯誤。返回值放在快取緩衝區中,可以參考 clearstatcache()。

filegroup
取得文件所屬的羣組。
語法: int filegroup(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數返回指定文件的羣組使用者 GID 值。返回 false 表示發生錯誤。返回值放在快取緩衝區中,可以參考 clearstatcache()。

fileinode
取得文件的 inode 值。
語法: int fileinode(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數返回指定文件的 inode 值。返回 false 表示發生錯誤。返回值放在快取緩衝區中,可以參考 clearstatcache()。

filemtime
取得文件最後的修改時間。
語法: int filemtime(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數返回指定文件 filename 的最後修改時間。返回 false 表示發生錯誤。返回值放在快取緩衝區中,可以參考 clearstatcache()。
使用範例
以下是 [email protected] (29-Apr-1999) 在 Win95 上的實作範例,例中返回當頁 Homepage 的最後修改時間並將 filemtime() 返回的 UNIX 格式的時間字符串轉換成 12 小時制的字符串。
(注:由於本例的文件爲 __FILE__ 表示目前的文件,其實和使用 getlastmod() 函數有相同的效果。)
<?php
$filemod = filemtime(__FILE__);
$filemodtime = date("F j Y h:i:s A", $filemod);
print("本頁最後修改時間: $filemodtime");
?>

fileowner
取得文件的擁有者。
語法: int fileowner(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數返回指定文件擁有者的 UID 值。返回 false 表示發生錯誤。返回值放在快取緩衝區中,可以參考 clearstatcache()。

fileperms
取得文件的權限配置。
語法: int fileperms(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數返回指定文件的權限配置值。返回 false 表示發生錯誤。返回值放在快取緩衝區中,可以參考 clearstatcache()。

filesize
獲得文件的大小。
語法: int filesize(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數返回指定文件的文件大小。返回 false 表示發生錯誤。返回值放在快取緩衝區中,可以參考 clearstatcache()。

filetype
獲得文件的類型。
語法: string filetype(string filename);
返回值: 字符串
函數種類: 文件存取
內容說明: 本函數返回指定文件的文件類型。可能的返回類型有 fifo、char、dir、block、link、file 及 unknown 等等。返回 false 表示發生錯誤。返回值放在快取緩衝區中,可以參考 clearstatcache()。

flock
鎖住文件。
語法: boolean flock(int fp, int operation);
返回值: 布爾值
函數種類: 文件存取
內容說明: 本函數用來鎖住文件,使別的行程無法存取。傳入的參數 fp 爲文件的指針。參數 operation 的值爲下列的數字之一:1 表示配置鎖住文件可以允許別的行程讀取;2 表示只有該行程可以寫入文件;3 表示讀寫均鎖住;4 則不鎖住區塊 (block)。而本函數無論在 UNIX 或是 Windows 系列中的鎖住效果都相近。執行成功則返回 true 值,否則返回 false 值。

fopen
打開文件或者 URL。
語法: int fopen(string filename, string mode);
返回值: 整數
函數種類: 文件存取
內容說明: 說明: 本函數可用來打開本地或者遠端的文件。若參數 filename 爲 "http://......" 則本函數利用 HTTP 1.0 協議與服務器連接,文件指針則指到服務器返回文件的起始處。若參數 filename 爲 "ftp://......." 則本函數會與服務器連接,文件指針指到指定的文件處。若 FTP 服務器沒有支持被動模式 (passive mode ftp) 則返回失敗值。打開的 FTP 文件可以是讀取或寫入其中之一,但不能讀或寫二種同時使用。其它的情形,本函數打開本地的文件,文件的指針則指向打開的文件。若開文件失敗,則返回 false 值。
字符串參數 mode 可以是下列的情形:
'r' 開文件方式爲只讀,文件指針指到開始處。
'r+' 開文件方式爲可讀寫,文件指針指到開始處。
'w' 開文件方式爲寫入,文件指針指到開始處,並將原文件的長度設爲 0。若文件不存在,則建立新文件。
'w+' 開文件方式爲可讀寫,文件指針指到開始處,並將原文件的長度設爲 0。若文件不存在,則建立新文件。
'a' 開文件方式爲寫入,文件指針指到文件最後。若文件不存在,則建立新文件。
'a+' 開文件方式爲可讀寫,文件指針指到文件最後。若文件不存在,則建立新文件。
'b' 若操作系統的文字及二進位文件不同,則可以用此參數,UNIX 系統不需要使用本參數。
使用範例
第一行爲 UNIX 系統使用;第二行是 Windows 系列系統的用法;第三、四行則爲 URL 的使用範例。
<?
$fp = fopen("/home/rasmus/file.txt", "r");
$fp = fopen("c://mydata//info.txt", "r");
$fp = fopen("http://www.php.net/", "r");
$fp = fopen("ftp://user:[email protected]/", "w");
?>
參考
fclose() popen() fsockopen()

fpassthru
輸出所有剩餘資料。
語法: int fpassthru(int fp);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數讀取文件 fp 直到文件尾 (End of file, EOF),並將資料輸出到標準輸出 (standard output)。若有錯誤發生,則返回 false 值。而文件 fp 必須由 fopen()、popen() 或 fsockopen() 打開成功的指針。當本函數讀完文件,會自動將文件關閉,即 fp 變無效。如果只是要將文件輸出到標準輸出,可以使用 readfile() 會比用 fopen() 更好。
參考: readfile() fopen() fclose() popen() fsockopen()

fputs
寫到文件指針。
語法: int fputs(int fp, string str, int [length]);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數即 fwrite(),只是一個別名。用來將字符串 str 寫到文件指針。

fread
位組的方式讀取文件。
語法: string fread(int fp, int length);
返回值: 字符串
函數種類: 文件存取
內容說明: 本函數讀到指定長度的位組或到文件尾 EOF。
使用範例
<?php
$filename = "/usr/local/myfile.txt";
$fd = fopen( $filename, "r" );
$contents = fread($fd, filesize($filename));
fclose( $fd );
?>
參考: readfile() fopen() fclose() fwrite() fgets() fgetss() file() fpassthru() popen() fsockopen()

fseek
移動文件指針。
語法: int fseek(int fp, int offset);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數將文件 fp 的指針移到指定的偏移位 (offset) 上。使用本函數就像 C 語言中的 fseek(fp, offset, SEEK_SET) 函數。成功則返回 0,失敗則返回 -1 值。當 fp 由 fopen() 打開 "http://...." 或是 "ftp://...." 等 URL 文件時,本函數無法作用。
參考: ftell() rewind()

ftell
取得文件讀寫指針位置。
語法: int ftell(int fp);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數返回文件 fp 的指針偏移位 (offset) 值。當發生錯誤時,返回 false 值。文件指針 fp 必須是有效的,且使用 fopen() 或者 popen() 二個函數打開方可作用。
參考: fopen() popen() fseek() rewind()

fwrite
二進位位方式寫入文件。
語法: int fwrite(int fp, string string, int [length]);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數將字符串 string 寫入文件資料流的指針 fp 上。若有指定長度 length,則會寫入指定長度字符串,或是寫到字符串結束。治募注意的是若指定了長度,則在 PHP 環境配置值 magic_quotes_runtime 的配置將被忽略,同時字符串中的斜線不會被刪除。
參考: fread() fopen() popen() fsockopen() fputs()

set_file_buffer
配置文件緩衝區大小。
語法: int set_file_buffer(int fp, int buffer);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數配置文件的緩衝區大小供寫入文件使用。若 buffer 值設爲 0,則在寫入操作時無緩衝區。成功則返回 0 值。值得注意的是當文件打開 (fopen) 時,會使用本函數將默認的緩衝區設爲 8k。
參考: fopen()

is_dir
測試文件是否爲目錄。
語法: boolean is_dir(string filename);
返回值: 布爾值
函數種類: 文件存取
內容說明: 本函數返回 true 值則表示指定的 filename 爲目錄名稱。返回值放在快取緩衝區中,可以參考 clearstatcache()。
注意: [email protected] (11-Jun-1999) 指出若用 is_dir("..");
的方式,返回的也是 true。
參考: is_file() is_link()

is_executable
測試文件是否爲可執行文件。
語法: boolean is_executable(string filename);
返回值: 布爾值
函數種類: 文件存取
內容說明: 本函數返回 true 值則表示指定的 filename 存在併爲可執行文件。返回值放在快取緩衝區中,可以參考 clearstatcache()。
參考: is_file() is_link()

is_file
測試文件是否爲正常文件。
語法: boolean is_file(string filename);
返回值: 布爾值
函數種類: 文件存取
內容說明: 本函數返回 true 值則表示指定的 filename 存在併爲正常的文件。返回值放在快取緩衝區中,可以參考 clearstatcache()。
參考: is_dir() is_link()

is_link
測試文件是否爲鏈接文件。
語法: boolean is_link(string filename);
返回值: 布爾值
函數種類: 文件存取
內容說明: 本函數返回 true 值則表示指定的 filename 存在併爲符號鏈接文件 (symbolic link)。返回值放在快取緩衝區中,可以參考 clearstatcache()。
參考: is_dir() is_file()

is_readable
測試文件是否可讀取。
語法: boolean is_readable(string filename);
返回值: 布爾值
函數種類: 文件存取
內容說明: 本函數返回 true 值則表示指定的 filename 存在並且可讀取。返回值放在快取緩衝區中,參考 clearstatcache()。
參考: is_writeable()

is_writeable
測試文件是否可寫入。
語法: boolean is_writeable(string filename);
返回值: 布爾值
函數種類: 文件存取
內容說明: 本函數返回 true 值則表示指定的 filename 存在並且可讀取。參數 filename 也可以是目錄名稱,用來測試該目錄是否可寫入。返回值放在快取緩衝區中,參考 clearstatcache()。
參考: readable()

link
建立硬式鏈接。
語法: int link(string target, string link);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數建立硬式鏈接,用來將參數 link 鏈接至 target。
參考: symlink() readlink() linkinfo()

linkinfo
取得鏈接信息。
語法: int linkinfo(string path);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數使用系統呼叫 lstat,返回 UNIX 上 C 語言 stat 結構類型的 st_dev 字段。返回 0 或 false 表示發生錯誤。
參考: symlink() readlink() link()

mkdir
建立目錄。
語法: int mkdir(string pathname, int mode);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數建立參數 pathname 目錄,參數 mode 以八進位的方式指定 (在參數前加 0) 比較不會出錯。返回 true 表示成功,失敗則返回 false。
使用範例
下例就是用八進位的例子,建立 /path/to/my/dir 目錄,該目錄只有擁有者及 root 等級可讀寫執行,其它人無法使用。
<?php
mkdir("/path/to/my/dir", 0700);
?>
參考: rmdir()

pclose
關閉文件。
語法: int pclose(int fp);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數用來關閉以 popen() 打開的管道文件。而參數 fp 必需是有效的,且使用 popen() 打開的文件。返回結處理文件的結束狀態。
參考: popen()

popen
打開文件。
語法: int popen(string command, string mode);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數執行指令開檔,而該文件是用管道方式處理的文件。用本函數打開的文件只能是單向的 (只能讀或只能寫),而且一定要用 pclose() 關閉。在文件操作上可使用 fgets()、fgetss() 與 fputs()。若是開檔發生錯誤,返回 false 值。
使用範例
<?
$fp = popen( "/bin/ls", "r" );
?>
參考: pclose()

readfile
輸出文件。
語法: int readfile(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數讀取文件,並將文件內容寫入標準輸出設備中。返回值是讀取的文件大小。若有錯誤返回 false 值,可以在函數前面加入 @,變成 @readfile,就可以隱藏起來。和 fopen() 用法一樣,若參數 filename 爲 "http://......" 則本函數利用 HTTP 1.0 協議與服務器連接,文件指針則指到服務器返回文件的起始處。若參數 filename 爲 "ftp://......." 則本函數會與服務器連接,文件指針指到指定的文件處。若 FTP 服務器沒有支持被動模式 (passive mode ftp) 則返回失敗值。打開的 FTP 文件可以是讀取或寫入其中之一,但不能讀或寫二種同時使用。其它的情形,本函數打開本地的文件,文件的指針則指向打開的文件。若開檔失敗,則返回 false 值。
參考: fpassthru() file() fopen()

readlink
返回符號鏈接 (symbolic link) 目標檔。
語法: string readlink(string path);
返回值: 字符串
函數種類: 文件存取
內容說明: 本函數和 C 語言的同名函數用法相同,返回符號鏈接的文件。若發生錯誤則返回 0。
參考: symlink() linkinfo()

rename
更改檔名。
語法: int rename(string oldname, string newname);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數可將舊檔名 oldname 改成新檔名 newname。成功則返回 true、失敗則返回 false。

rewind
重置開檔的讀寫位置指針。
語法: int rewind(int fp);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數重置文件的讀寫位置指針到標案的開頭處。發生錯誤則返回 0。文件 fp 必須是有效且用 fopen() 打開的文件。
使用範例
fseek ftell

rmdir
刪除目錄。
語法: int rmdir(string dirname);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數可用來刪除目錄。欲刪除的路徑必須是空的目錄,且權限必須要合乎要求。發生錯誤則返回 0。
參考: mkdir()

stat
取得文件相關信息。
語法: array stat(string filename);
返回值: 數組
函數種類: 文件存取
內容說明: 本函數可蒐集文件的相關信息,並返回數組。數組的元素依序如下:
裝置名稱 (device)
inode 值
inode 文件模式
參照到該檔的名稱總數,含 link 檔。
擁有者的 UID
擁有者的 GID
若爲字符或裝置設備則爲裝置類型 (限系統支持 st_blksize 方有效,Windows 系列返回 -1)
位組爲單位的文件長度
最後存取時間
最後修改時間
最後改動時間
文件系統的區塊大小 (限系統支持 st_blksize 方有效,Windows 系列返回 -1)
匹配的區塊數
返回值放在快取緩衝區中,參考 clearstatcache()。

lstat
取得鏈接文件相關信息。
語法: array lstat(string filename);
返回值: 數組
函數種類: 文件存取
內容說明: 本函數可蒐集鏈接文件的相關信息,並返回數組。數組的元素依序如下:
裝置名稱 (device)
inode 值
鏈接 (link) 到該文件的總數。
擁有者的 UID
擁有者的 GID
若爲字符或裝置設備則爲裝置類型 (限系統支持 st_blksize 方有效,Windows 系列返回 -1)
位組爲單位的文件長度
最後存取時間
最後修改時間
最後改動時間
文件系統的區塊大小 (限系統支持 st_blksize 方有效,Windows 系列返回 -1)
匹配的區塊數
返回值放在快取緩衝區中,參考 clearstatcache()。

symlink
建立符號鏈接 (symbolic link)。
語法: int symlink(string target, string link);
返回值: 整數
函數種類: 文件存取
內容說明
本函數可用來建立符號鏈接。從參數 target 鏈接到 link 處。建立硬式鏈接可用 link() 函數。
參考: link() readlink() linkinfo()

tempnam
建立只一的臨時檔。
語法: string tempnam(string dir, string prefix);
返回值: 字符串
函數種類: 文件存取
內容說明: 本函數可建立一個臨時檔,檔名不會與同目錄中的文件重覆。返回字符串就是建立的臨時檔名。若發生錯誤則返回空字符串。
使用範例
<?
$tmpfname = tempnam( "/tmp", "HAHA" );
?>

touch
配置最後修改時間。
語法: int touch(string filename, int [time]);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數可用來配置最後修改時間。若有指定參數 time,則依指定的時間;若無指定時間,則爲服務器的時間。和 UNIX 的同名指令一樣,若文件不存在,則會建立 filename 文件。成功則返回 true 值,其它失敗時則返回 false。

umask
改變目前的文件屬性遮罩 umask。
語法: int umask(int [mask]);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數用來配置 PHP 的 umask 值。此值是 mask 與 0777 運算的值,返回舊的 umask 值。當參數 mask 不存在時,本函數將返回目前的 umask 值。

unlink
刪除文件。
語法: int unlink(string filename);
返回值: 整數
函數種類: 文件存取
內容說明: 本函數刪除文件 filename,用法像 UNIX 中 C 語言呼叫的同名函數 unlink()。當發生錯誤則返回 0 或 false。
參考: rmdir()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章