幾個關鍵的函數。
is_dir($dirname) //判斷一個檔案名稱是否 為目錄
opendir($dirname) //開啟一個檔案夾
readdir($dir_stream) //函數返回由 opendir() 開啟的目錄控制代碼中的條目
pathinfo($path) //函數以數組的形式返迴文件路徑的資訊。
例如當前檔案夾下的P1010436
例如當前檔案夾下的P1010436.jpg檔案路徑資訊數組:
Array
(
[dirname] => .
[basename] => P1010436.jpg
[extension] => jpg
[filename] => P1010436
)
rename(oldname,newname,context) //函數重新命名檔案或目錄。若成功,則該函數返回 true。若失敗,則返回 false。
| 代碼如下 |
複製代碼 |
<?php function fileRename($dir,$srcExtension,$desExtension){ if(!is_dir($dir)){ echo "{$dir}不是一個有效目錄!n"; exit(); } $handler = opendir($dir); //列出$dir目錄中的所有檔案 while(($fileName = readdir($handler))!=false){ if($fileName!='.'&&$fileName!='..'){ //'.' 和 '..'是分別指向目前的目錄和上級目錄 $curDir = $dir.'/'.$fileName; if(is_dir($curDir)){ //如果是目錄,則遞迴下去 fileRename($curDir,$srcExtension,$desExtension); } else{ //擷取檔案路徑的資訊 $path = pathinfo($curDir); //print_r($path); if($path['extension']==$srcExtension){ $newname = $path['dirname'].'/' .$path['filename'].".".$desExtension; rename($curDir,$newname); echo $curDir.'-->'.$newname."n"; } } } } } fileRename(".","JPG","jpg"); ?> |
使用方法很簡單,我們把圖片與php檔案同一目錄然後再運行php即可。