以下のエントリの追加訂正 (20070723PM)
ファイルのglobとフォルダのglobを一緒くたにする理由で素の'*'以外で検索などすると簡単に検索が終了してしまうので、もっと無難に使えるようにてけとうに直しておきまる
※20071021AM 配列の初期化が欠けていました修正
<?php function glob_recursive($directory , $glob = '*.*', $depth = -1){ $list=array(); foreach( array_merge( array($directory), glob_get_dirs($directory ,'*',$depth)) as $path) $list = array_merge($list,glob($path .DIRECTORY_SEPARATOR.$glob )); return $list; } function glob_get_dirs($directory ,$glob = '*',$depth = -1 , $option = GLOB_ONLYDIR){ $path = $directory.DIRECTORY_SEPARATOR; $list = array(); while (($depth-- !== 0) && ( $add = glob($path . $glob ,$option)) && ( $path.= '*'.DIRECTORY_SEPARATOR) && ( $add !== false )) $list = array_merge($list,$add); return $list; } ?>