条件付きディレクトリツリー表示について
ある条件(例えばパーミッションや更新日付)でファイルを抽出し、ディレクトリツリーを表示したいと思っています。
http://www.sound-uz.jp/php/tips/file.html
のページを参考(ディレクトリツリーの部分)に作っているのですが、条件を元にファイルを配列に入れても、そのフォルダに条件に当てはまるファイルが一つも無い(要素が無い)場合にもフォルダは表示されてしまいます。
配下にマッチするファイルが一つも無い場合は、上位のフォルダも表示させないようにするにはどうしたらいいのでしょうか?
かなり困っていますのでご教授お願いします。
---参考にプログラム掲載------
function showdirtree( $tree )
{
if( !is_array( $tree ) ) // 配列でなければ false を返す
return false;
static $count = 0; // インデントの階層の深さ
$indent = ( $count ) ? str_repeat( " ", $count ) : "";
$count++;
foreach( $tree as $key => $value )
{
if( is_array( $value ) )
{
// 配列の場合ディレクトリ名を表示し再帰呼出
print( $indent."+ " . $key . "<br>\n" );
showdirtree( $value );
}
elseif( preg_match( "/.*(\.html|\.txt|\.php)$/i", $value ) )
{
// HTMLとTEXTとPHPのみアンカーをつけてファイル名を表示
print( $indent."- <a href=\"" . $value . "\" target=\"view\">" . $key . "</a><br />\n" );
}
}
$count--;
return true;
}