// 指定されたフォルダー内のファイルを表示します
$fileList = array(); visitFile($path)
{
global $fileList;
$path = str_replace("\", "/", $path);
$fdir = dir($path); >read()) !== false)
{
if($file == '.' || $file == '..'){ continue; }
$pathSub = preg_replace("*/{2, }*", "/ ", $path."/".$file); // 複数のバックスラッシュを置換します
$fileList[] = is_dir($pathSub) ? $pathSub."/" : $pathSub;
if(is_dir ($pathSub )){ visitFile($pathSub); }
$fdir->close();
<フォームメソッド="get">
$path = str_replace("\", "/", $path); preg_replace(" */{2,}*", "/", $path);
?> パス:
ディスクルートディレクトリ/ ネットワークローカル./phpMyAdmin ローカルディスク ファイル: //C: または C: input name= "action" type="submit" id="action" value="delete" onclick="if(!confirm('+path.value+' のすべてのサブフォルダーとサブファイルを削除しますか?')) return false;" />
if(!empty($path)){
$path("*/{2,}*", "/", $path); files = visitFile($path);
switch(strto lower($_GET["action"]))
{
case "view":
foreach($files as $key => $value)
{
printf(" No.%4d·%s
rn", $key+1, $value);
}
break;
case "削除":
$faileFiles = array();
foreach(array_reverse($files) as $value)
{
if(!unlink($value))
{
array_push($faileFiles, $value);
}
}
if(!unlink($path)) { array_push($faileFiles, $path) ; }
if(count($faileFiles) > 0)
{
printf("
削除に失敗したファイル (%d):
rn", count($faileFiles));
foreach( $failFiles as $key => $value)
{
printf("No.%4d·%s
rn", $key+1, $value);
}
}
break; }
}
?>
http://www.bkjia.com/PHPjc/322470.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/322470.html
技術記事
注: visitFile() にはいくつかの変更が加えられています。 // 指定されたフォルダー内のファイルを表示します $fileList = array($path) { global $fileList(. ..