以下のエントリの追加訂正 (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;

}
?>