程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP自定義遍歷目錄下所有文件dir(),readdir()函數

PHP自定義遍歷目錄下所有文件dir(),readdir()函數

編輯:關於PHP編程

       方法一:使用dir()遍歷目錄

      dir()函數,成功時返回Directory類實例

      PHP dir() 語法格式為:

      dir(directory);//directory為需要顯示文件名的目錄名稱,可包含路徑信息

      PHP dir() 用法舉例:列出upload目錄下的所有文件名:

     代碼如下   <?php
    $dir = @ dir("upload");//打開upload目錄;“@”可屏蔽錯誤信息,因有時候需要顯示文件的目錄內並沒有文件,此時可能會報出錯誤,用“@”隱藏掉錯誤
    //列舉upload目錄中的所有文件
    while (($file = $dir->read()) !== false)
    {
      echo "文件名: " . $file . "<br />";
    }
    $dir->close();
    ?>

      輸出結果為:

      文件名: .

      文件名: ..

      文件名: logo.gif

      文件名: arrow.gif

      文件名: bg.gif

      例子

     代碼如下  
    function tree($dir)
    {
        $mydir = dir($dir);
        while($file = $mydir->read())
        {
            if($file != '.' && $file != '..')
            {
                if(is_dir("$dir/$file"))
                {
                    echo '目錄名:'.$dir.DIRECTORY_SEPARATOR.'<font color="red">'.$file.'</font><br />';
                    tree("$dir/$file");
                }else{
                    echo '文件名:'.$dir.DIRECTORY_SEPARATOR.$file.'<br />';
                }
            }
        }
        $mydir->close();
    }
    tree('./phpmyadmin');

      方法二 使用readir()遍歷目錄

      定義和用法

      readdir() 函數返回由 opendir() 打開的目錄句柄中的條目。

      若成功,則該函數返回一個文件名,否則返回 false。

      語法

      readdir(dir_stream)

      例子

     代碼如下  
    header('content-type:text/html;charset=utf-8');

    function listDir($dir)
    {
        if(is_dir($dir))
        {
            if($handle = opendir($dir))
            {
                while($file = readdir($handle))
                {
                    if($file != '.' && $file != '..')
                    {
                        if(is_dir($dir.DIRECTORY_SEPARATOR.$file))
                        {
                            echo '目錄名:'.$dir.DIRECTORY_SEPARATOR.'<font color="red">'.$file.'</font><br />';
                            listDir($dir.DIRECTORY_SEPARATOR.$file);
                        }else{
                            echo '文件名:'.$dir.DIRECTORY_SEPARATOR.$file.'<br />';
                        }
                    }
                }
            }
            closedir($handle);
        }else{
            echo '非有效目錄!';
        }
    }
    listDir('./phpmyadmin');
    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved