dongliu1883 2018-08-20 07:53
浏览 44
已采纳

如何在日期之后更改PHP文件及其路径

I want to get all file names (and path) of files those updated after a date (in directory and subdirectories) using PHP.

like all files updated after 20.08.2017 ,

Below code provide only files from directory, i also need path,

$dir = "opendir(".")";
clearstatcache();
$yesdate = strtotime("-1 days");
while(false != ($file = readdir($dir)))
{
    if ( substr($file,-4) == ".php" ) 
    {
    if (filemtime($file) >= $yesdate)
    {
        echo $file;
    }
}

}

Thanks

  • 写回答

4条回答 默认 最新

  • doujiao3074 2018-08-20 08:31
    关注

    If you want to scan all sub directories until the end of the tree you need to use a recursive function.

    function get_updated_files($date, $directory, $result = array())
    {
        $directory = realpath($directory);
        $directory_content = glob($directory.'/*');
        foreach($directory_content as $item) {
        if(is_dir($item)) {
            $result = get_updated_files($date, $item, $result);
        } elseif(strtotime($date) < filemtime($item) && pathinfo($item, PATHINFO_EXTENSION) == 'php') {
            $result[] = $item;
        }
        }
        return $result;
    }
    
    $result = get_updated_files('2017-08-20', '.');
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line