1

ディレクトリのセットを削除したいのですが、最初にディレクトリ名を取得する必要があるため、次のサイトwww.my_site.comがあり、次のコードを使用してすべてのディレクトリ名を取得するとします。

$get_dirs = glob("*", GLOB_ONLYDIR);

for ($i=0;$i<count($get_dirs);$i++){
echo $get_dirs[$i].'+'; // Will show results divided by + sign
}

結果が次のようになったとします (5 つのディレクトリがあり、+ 記号で区切られていることに注意してください)。

dir1+dir2+dir3+dir4+dir5+

それを使用する

rrmdir(dir1); // that would delete only directory dir1

私の質問

dir1+dir2+dir3+dir4+dir5++ 記号に基づいてディレクトリ名の結果を展開し、すべての削除機能を使用してループして、最終的にすべてのディレクトリdir1 and dir2 and dir3 and dir4 and dir5を削除する方法。

4

2 に答える 2

2

これがあなたがやろうとしていることだと思いますか?

 $dir  = trim('dir1+dir2+dir3+dir4+dir5+', '+');
 $arr = explode("+", $dir);

 foreach ($arr as $a){
      rrmdir($a);
 }

最後に余分な「+」があるので、trim($ val、'+')

于 2012-10-28T20:01:09.253 に答える
1

あなたは実際にそこであなた自身の質問に答えました:

$dirs = explode('+', $get_dirs);
foreach ($dirs as $dir) {
    rrmdir($dir);
}

または私は何か間違ったことを理解しましたか?そして、なぜあなたはそれをすでにサイクルでやってみませんか?

于 2012-10-28T20:00:28.560 に答える