| 名稱 | 用途 | 例 |
|---|
| basename(完整路徑的檔案) | 傳回該含路徑檔案的檔名 | basename("/home/httpd/index.php"); //index.php |
| dirname(完整路徑的檔案) | 傳回該含路徑檔案的路徑 | basename("/home/httpd/index.php"); //home/httpd |
| 檔案存取 | | |
| file(檔案) | 讀檔案內容至陣列中 | $lines = file("data.txt"); //$lines為一陣列 |
| readfile(檔案) | 讀入一個檔案,然後從stdout輸出 單純做dump用 | readfile("/etc/passwd"); |
| fpassthru(檔案指向) | 從檔案指向所在位置,讀到檔尾 然後從stdout輸出 | $fp = fopen("/etc/passwd", "r"); fpassthru($fp); |
| fopen(檔案, 模式) | 開啟檔案, 模式: r - 唯讀 r+ -讀寫 w -寫,覆蓋,檔案不存在自動建立 w+ - 讀寫,覆蓋,檔案不存在自動建立 a - 寫,加在最後,檔案不存在自動建立 a+ - 讀寫,加在最後,檔案不存在自動建立 | $fp = fopen("test", "a");
|
| flock(檔案指向, 模式) | 鎖定檔案,模式: 1 - lock as reader(shared lock) 2 - lock as writer(exclusive lock) 3 - release | flock($fp, 1); |
| fputs(檔案指向, 字串[, 長度]) | 寫入內容,可指定寫入長度 未指定時表整個字串 | fput($fp, "mydata"); |
| fwrite(檔案指向, 字串[, 長度]) | 同fputs | |
| fread(檔案指向, 長度) | Binary-safe file read,遇到EOF或長度時停止 | $content = fread($fp, filesize($filename)); |
| fclose(檔案指向) | 關閉檔案 | fclose($fp); |
| feof(檔案指向) | 指向位置是否為EOF | feof($fp); |
| fseek(檔案指向, 位移量) | 移動,成功傳回0,否則傳回-1 | fseek($fp, 5); |
| rewind(檔案指向) | 移到檔案開頭 | rewind($fp); |
| fgetc(檔案指向) | 取回字元 | fgetc($fp); |
| fgets(檔案指向, 長度) | 取回(長度-1)個字元, 遇到EOF或new line會中斷 | fgets($fp, 10); |
| fgets(檔案指向, 長度) | 取回(長度-1)個字元, 遇到EOF或new line會中斷 ※會去除標記及<? ...?> | fgetss($fp, 10); |
| popen(檔案, 模式) | 開啟檔案, 模式: r - 唯讀 w -寫,覆蓋,不會自動建立 | $fp = popen("test", "w"); |
| pclose(檔案指向) | 關閉用popen開啟的檔案 | pclose($fp); |
| 檔案管理 | | |
| copy(來源, 目的) | 複製檔案 | copy("t1.php", "t2.php"); //未指定路徑,用目前路徑 |
| rename(舊檔名, 新檔名) | 重新命名 | rename("t2.php", "t3.php") //未指定路徑,用目前路徑 |
| unlink(檔案) | 刪除檔案 | unlink("t3.php"); //未指定路徑,用目前路徑 |
| file_exists(檔案) | 檢查檔案是否存在 | file_exists("t3.php"); //未指定路徑,用目前路徑 |
mkdir(目錄名稱, 權限) ※權限必須用四位數之8進位 | 建立目錄 | mkdir("testdir", "0700"); |
| rmdir(目錄名稱) | 刪除目錄 | rmdir("testdir"); |
| 檢查 | | |
| is_dir(目錄) | 是否為目錄 | is_dir("testdir") |
| is_file(檔案) | 是否為(reqular)檔案 | is_file("test") |
| is_readable(檔案) | 是否可讀取 | is_readable("test"); |
| is_writeable(檔案) | 是否可寫入 | is_writeable("test"); |
| is_executable(檔案) | 是否可執行 | is_executable("test"); |
| 權限 | | |
| chgrp(檔案, 群組) | 改變群組 | chgrp("/tmp/test", "somegroup"); |
| chmod(檔案, 執行權) | 改變執行權 ※必須用4個八進位數字, 注意不要加雙引號 | chgrp("/tmp/test", 0666); |
| chown(檔案, 使用者) | 改變使用者 | chown("/tmp/test", "someuser"); |
| 資訊 | | |
| fileatime(檔案) | 最後一次存取時間,傳回timestamp ※開檔未更動也算存取 | $t = fileatime("p1.php"); echo date("Y-m-d H:i:s", $t); |
| filectime(檔案) | 最後一次更動時間,傳回timestamp | $t = filectime("p1.php"); echo date("Y-m-d H:i:s", $t); |
| filemtime(檔案) | 最後一次被修改時間,傳回timestamp | $t = filemtime("p1.php"); echo date("Y-m-d H:i:s", $t); |
| filesize(檔案) | 檔案大小 | filesize("test"); |
| filetype(檔案) | 檔案類型, 可能值: fifo, char, dir, block, link, file, unknown | filetype("test"); |
| fileowner(檔案) | 檔案擁有者的ID | fileowner("test"); |
| filegroup(檔案) | 檔案群組的ID | filegroup("test"); |
| fileinode(檔案) | 檔案的inode number | fileinode("test"); |
| fileperms(檔案) | 檔案的permissions | fileperms("test"); |
| 其他 | | |
tempname(路徑, 檔名前文字) ※檔名前文字至多5個字元 | 傳回目錄下的唯一檔名 路徑不存在,則為/tmp | |
沒有留言:
張貼留言