从最近 24 小时内上传的文件夹中获取文件
Posted
技术标签:
【中文标题】从最近 24 小时内上传的文件夹中获取文件【英文标题】:Getting files from folder which uploaded in last 24 hours 【发布时间】:2014-12-29 06:23:44 【问题描述】:如何获取过去 24 小时内上传的图片(来自 x 目录)?
例如,/images/文件夹中有100张图片;但其中 10 个已在过去 24 小时内上传。我想通过上传时间从新到旧列出它们..
我怎样才能列出它们?
【问题讨论】:
【参考方案1】:您可以使用 glob 包装器列出目录 X (php manual glob wrapper) 中的文件。 使用 filemtime 获取文件修改时间。
【讨论】:
【参考方案2】:filectime(),来自 PHP 文档:
返回文件上次更改的时间,失败时返回 FALSE。时间作为 Unix 时间戳返回。
您可以检查 filectime() 返回的时间戳是否大于前一天的时间戳。
试试这个:
<?php
$path = '/path/to/dir/';
$yesterday = strtotime("-1 day");
if ($handle = opendir($path))
while (false !== ($entry = readdir($handle)))
if (filectime($path.$entry) > $yesterday)
echo filectime($path.$entry) . ":" . $entry . " "."\n";
closedir($handle);
?>
上面的代码将只回显过去一天创建的文件。
【讨论】:
上次更新时间和上次上传/上次创建时间看起来不同;我需要通过上传时间排序.. 我不能使用任何东西而不是 filectime() 或 filemtime() 来按上传时间列出文件吗? @user3283814 我相信这些是您最好的选择。看看这个答案,***.com/a/5849725/2460773 如果它回答了你的问题,请告诉我。 这将递归地完成这项工作:【参考方案3】:首先,您在数据库中创建一列序列号。那么您必须选择最大序列号为...
<?php
mysql_connect("localhost","phpuser","phppass");
$db="databasename";
mysql_select_db($db);
$qd=mysql_query("select max(srl_num) from tablename");
$lf=mysql_fetch_row($qd);
$lf1=$lf[0];
$qd=mysql_query("select * from tablename where srl_num= '$lf1' ");
$qd1=mysql_fetch_row($qd);
$lfn=$qd1[0];
$fn=$qd1[2];
$fn2=$qd1[3];
?>
并随心所欲地回显 $fn 和 fn2
【讨论】:
以上是关于从最近 24 小时内上传的文件夹中获取文件的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 HealthKit 从特定日期准确获取 24 小时的睡眠数据?