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

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

こんな感じ

・特定のディレクトリ内のファイルをリストします。
・.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>

Similar posts