PHP プログラムを使用してディレクトリを削除する 3 つの方法の例
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-21 08:58:03
1.規制の提出: //テストされていません
以下为引用的内容: deleteDir($dir) { if (rmdir($dir)==false && is_dir($dir)) { if ($dp = opendir($dir)) { while (($file=readdir($dp)) != false) { if (is_dir($file) && $file!='.' && $file!='..') { deleteDir($file); } else { unlink($file); } } closedir($dp); } else { exit('Not permission'); } } } |
2.システムコールメソッド
以下为引用的内容: function del_dir($dir) { if(strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') { $str = "rmdir /s/q " . $dir; } else { $str = "rm -Rf " . $dir; } } |
3. webjx.com からのラウンド ロビン
以下は引用内容です:
以下为引用的内容:
function deltree($pathdir) { echo $pathdir;//我调试时用的 if(is_empty_dir($pathdir))//如果是空的 { rmdir($pathdir);//直接删除 } else {//否则读这个目录,除了.和..外 $d=dir($pathdir); while($a=$d->read()) { if(is_file($pathdir.'/'.$a) && ($a!='.') && ($a!='..')){unlink($pathdir.'/'.$a);} //如果是文件就直接删除 if(is_dir($pathdir.'/'.$a) && ($a!='.') && ($a!='..')) {//如果是目录 if(!is_empty_dir($pathdir.'/'.$a))//是否为空 {//如果不是,调用自身,不过是原来的路径+他下级的目录名 deltree($pathdir.'/'.$a); } if(is_empty_dir($pathdir.'/'.$a)) {//如果是空就直接删除 rmdir($pathdir.'/'.$a); } } } $d->close(); echo "必须先删除目录下的所有文件";//我调试时用的 } } function is_empty_dir($pathdir) { //判断目录是否为空,我的方法不是很好吧?只是看除了.和..之外有其他东西不是为空 $d=opendir($pathdir); $i=0; while($a=readdir($d)) { $i++; } closedir($d); if($i>2){return false;} else return true; }
|
function deltree($pathdir) { echo $pathdir;//デバッグ時に使用します if(is_empty_dir($pathdir))//それが空の場合 { rmdir($pathdir);// 直接削除 } else {// それ以外の場合は、 と .. を除くこのディレクトリを読み取ります。 $d = dir($pathdir); while($a=$d->read()) $a!='.') && ($a!='..')){リンク解除($pathdir.'/'.$a);} // ファイルの場合は直接削除 If(is_dir($pathdir.'/'.$a) && ($a) !='.') && ($a!='..')) ディレクトリの場合 If(!is_empty_dir($pathdir.'/'.$a))//Is空ですか? deltree($pathdir.'/'.$a); rmdir($pathdir.'/'.$a); "ディレクトリ内のすべてのファイルを削除する必要があります。 first";//デバッグ時に使用しました } } function is_empty_dir($pathdir) { //判断 ディレクトリは空ですか? 私の方法はあまり良くないですよね? . と .. 以外に空でないものがあるかどうかを確認してください。 $d=opendir($pathdir) while($a=readdir($) d )) { $i++; } closedir($d) if($i>2){return false;} それ以外の場合は true を返します。 }
|
テーブル>
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31