[PHP算法]遍历当前目录,并根据文件的修改时间排序

原理

获取文件的修改时间作为键值,然后对键值进行冒泡排序。

例子

<?php
$a1 = scandir('./');
foreach( $a1 as $value )
{
    //排除的目录
    if( ($value == '.') OR ($value == '..') ){
        continue;
    }
    $time = date("Y-m-d H:i:s",filemtime($value));
    //用时间作为键值,得到一个新的数组
    $newarr[$time] = $value;
}
//获取键值
$keys = array_keys($newarr);
//统计新数组的个数
$num = count($newarr);
for ( $i=0; $i < $num; $i++ )
{ 
    for ( $j=0; $j < $num - 1; $j++ )
    { 
        //键值进行时间比较
        if(strtotime($keys[$j]) > strtotime($keys[$j + 1])){
            $tmp = $keys[$j + 1];
            $keys[$j + 1] = $keys[$j];
            $keys[$j] = $tmp;
        }
    }
}
foreach( $keys as $key )
{
    echo $key.'-'.$newarr[$key]."<br />";
}

标签: 无

发表评论: