這篇文章主要介紹了關於PHP的檔案和目錄操作,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
php檔案目錄操作
目錄操作
is_dir ( $path ) 判斷當前路徑是否為目錄 ,返回布爾
opendir ( $path ) 開啟路徑目錄,返回資源
readdir ( $handle ) 讀取當前開啟目錄下一個檔案,同時指標向前移動一位,返回字串 (檔案/目錄名)
closedir ( $handle ) 關閉當前開啟目錄 返回布爾
getcwd ( ) 獲得當前工作目錄
rmdir 刪除目錄,刪除前必須先刪除目錄下所有檔案和目錄
代碼:列出指定目錄下所有檔案和檔案名稱
function traversal_dir($path, $deep = 0) { if (is_dir($path)) { $handle = opendir($path); while (($file = readdir($handle)) !== false) { if ($file == '.' || $file == '..') { continue; } echo str_repeat('-', 2 * $deep) . $file . '</br>'; if (is_dir($path . '/' . $file)) { traversal_dir($path . '/' . $file, $deep + 1); } } }}traversal_dir('./');
檔案操作
is_file ( $path ) :判斷指定 路徑是否為檔案
file_exists ( $path ) : 檢查目錄或者檔案是否存在
fopen ( $file ) :開啟檔案或者 URL 返回資源
fread ( resource $handle
, int $length
) : 讀取檔案,可指定長度
fwrite ( resource $handle
, string $string
[, int $length
] ) : 返回寫入字串大小,如果指定了 length
,當寫入了 length
個位元組或者寫完了 string
以後,寫入就會停止,視乎先碰到哪種情況。
fgets ( resource $handle
[, int $length
] ) : 讀取一行文本,length指定一行文本長度
fclose ( resource $handle
) : 關閉檔案
basename ( $path ) : 返回指定路徑的檔案名稱部分 返回String
dirname ( $path ) : 返回指定路徑的目錄名部分 返回string
路徑部分
操作部分
stat 獲得檔案資訊
判斷部分
filesize ( $path ) 獲得檔案大小 int
filetype ( $path ) 獲得檔案類型 string (可能值:fifo,char,dir,block,link,file 和 unknown)
rename ( string $oldname
, string $newname
[, resource $context
] ) 重新命名或者移動 返回布爾
unlink ( $path ) 刪除檔案 返回布爾
file_get_contents 將整個檔案讀如一個字串
file_put_contents 將一個字串寫入檔案
代碼:每執行一次檔案,向檔案頭部追加 Hello word
$path = './hello.txt';if (!file_exists($path)) { $handle = fopen($path, 'w+'); fwrite($handle, 'Hello word' . '\r\n'); fclose($handle);} else { $handle = fopen($path, 'r'); $content = fread($handle, filesize($path)); $content = 'Hello word \r\n' . $content; fclose($handle); $handle = fopen($path, 'w'); fwrite($handle, $content); fclose($handle);}
代碼:遍曆刪除檔案夾及檔案夾下所有檔案
function traversal_delete_dir($path) { if (is_dir($path)) { $handle = opendir($path); while (($file = readdir($handle)) !== false) { if ($file == '.' || $file == '..') { continue; } if (is_dir($path . '/' . $file)) { traversal_delete_dir($path . '/' . $file); } else { if (unlink($path . '/' . $file)) { echo '刪除檔案' . $file . '成功'; } } } closedir($handle); rmdir($path); }}traversal_delete_dir('./shop_api');
以上就是本文的全部內容,希望對大家的學習有所協助,更多相關內容請關注topic.alibabacloud.com!