本文實例講述了php中目錄操作opendir()、readdir()及scandir()用法。分享給大家供大家參考,具體如下:
opendir(path,context)
若成功,則該函數返回一個目錄流,否則返回 false 以及一個 error??梢酝ㄟ^在函數名前加上 “@” 來隱藏 error 的輸出。
readdir()
函數返回由 opendir()
打開的目錄句柄中的條目。若成功,則該函數返回一個文件名,否則返回 false。
scandir()
函數返回一個數組,其中包含指定路徑中的文件和目錄。
若成功,則返回一個數組,若失敗,則返回 false。如果 directory 不是目錄,則返回布爾值 false
付上2段搜到的讀取目錄的代碼,親測有效
顯示目錄中文件名
// 打開目錄,然后讀取其內容if (is_dir($dir)){ if ($dh = opendir($dir)){ while (($file = readdir($dh)) !== false){ echo "filename:" . $file . "<br>"; } closedir($dh); }}
拷貝一個目錄的文件到另一個目錄
copy_dir($from_dir,$to_dir);function copy_dir($from_dir,$to_dir){ if(!is_dir($from_dir)){ return false; } echo "/r/n from:",$from_dir,'---to',$to_dir; $from_files = scandir($from_dir); //如果不存在目標目錄,則嘗試創建 if(!file_exists($to_dir)){ @mkdir($to_dir); } if(!empty($from_files)){ foreach ($from_files as $file){ if($file == '.' || $file == '..' ){ continue; } if(is_dir($from_dir.'/'.$file)){//如果是目錄,則調用自身 copy_dir($from_dir.'/'.$file,$to_dir.'/'.$file); }else{//直接copy到目標文件夾 copy($from_dir.'/'.$file,$to_dir.'/'.$file); } } }}
希望本文所述對大家PHP程序設計有所幫助。
新聞熱點
疑難解答
圖片精選