フォノクラフト株式会社:作業メモや備忘録など

作業メモや備忘録など…

特定のディレクトリ内の特定の拡張子を持つファイルを降順でリストする。

without comments

特定のディレクトリ内の特定の拡張子を持つファイルを降順でリストしてみます。

こんな感じ

・特定のディレクトリ内のファイルをリストします。
・.tsvという拡張子のファイルをリストします。
・foreachの前にrsort($list); を入れて降順にします。

サンプルダウンロード

dir_file_list.zip(3kb)

サンプルソース

<select name="file">
<option value="">ファイルを選択してください。</option>
<?php

function listFiles($dir,$suffix){
	$len_suffix=strlen($suffix);
	$path_id=opendir($dir);
	
		while( $file_name = readdir($path_id) ){
		$l=strlen($file_name);
			if( $l > $len_suffix ){
			$mysuffix=substr($file_name,$l-$len_suffix);
			
				if( $mysuffix==$suffix ){
					#print $file_name;
					$list[] = $file_name;
				}
			}
		}
	
	return $list;
}

//ディレクトリを指定
$dir= "log/";
//どの拡張子のファイルを一覧に出すか指定
$list=listFiles($dir,".tsv");

//昇順
//sort($list); 
//降順
rsort($list); 

foreach( $list as $file_name ){
	print '<option value="' . $dir . '' . $file_name . '">' . $dir . '' . $file_name . '</option>';
}
?>
</select>