は、私はここで、いくつかのパフォーマンスに関する記事や のreaddir出くわしたPHPスクリプトです:これは正しくファイル/フォルダをエコーPHP再帰的なフォルダのreaddir
function getDirectory($path = '.', $level = 0) {
$ignore = array('cgi-bin', '.', '..');
$dh = @opendir($path);
while(false !== ($file = readdir($dh))){
if(!in_array($file, $ignore)){
$spaces = str_repeat(' ', ($level * 4));
if(is_dir("$path/$file")){
echo "$spaces $file\n";
getDirectory("$path/$file", ($level+1));
} else {
echo "$spaces $file\n";
}
}
}
closedir($dh);
}
getDirectory(".");
。その後、私は最初のコードのような配列を作成することができ、すべてのフォルダやファイルを見つける
$t = system('find');
print_r($t);
:
は今、私はこれを見つけました。
私はsystem('find');
がreaddir
よりも速いと思っていますが、それが良い習慣であるかどうかを知りたいですか? ありがとうございました
システムコールは移植性がありません。あなたのサンプルコードは、* nix OSに依存しています。 – nickb
私はcentos 5にapacheとphp + mysqlを持っています。これは大丈夫ですか? – rcs20
'system()'の呼び出しに慣れるのも悪い考えです。パラメータなしでうまくいくはずですが、ユーザの入力に基づいて動的に構築すると、セキュリティホールが悪化する可能性があります。 – millimoose