PHP的檔案和目錄操作

來源:互聯網
上載者:User
這篇文章主要介紹了關於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!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.