
PHP 获取文件夹内最新创建文件的技巧
直接使用 scandir() 函数无法获取文件夹中按创建日期排序的文件列表,因为它仅按文件名字典序排序。 我们需要编写代码来读取目录,并根据文件修改时间进行排序。
以下代码片段演示了如何实现:
$files = [];$directory = './bin'; // 目标文件夹路径if ($handle = opendir($directory)) { while (false !== ($entry = readdir($handle))) { $filePath = $directory . '/' . $entry; if (is_file($filePath)) { $modifiedTime = filectime($filePath); // 获取文件最后修改时间 $files[$modifiedTime] = $entry; // 使用修改时间作为键值 } } closedir($handle);}krsort($files); // 按修改时间降序排序$latestFile = array_shift($files); // 获取第一个元素,即最新修改的文件var_dump($latestFile); // 输出最新文件的名称
这段代码首先创建一个空数组 $files 用于存储文件信息。然后,它迭代遍历指定目录下的所有条目,检查是否是文件,如果是则获取其最后修改时间 (filectime()),并将其作为键,文件名作为值存储到 $files 数组中。最后,使用 krsort() 函数按键值(即修改时间)降序排序数组,并使用 array_shift() 获取排序后的第一个元素,即最新创建的文件名。
立即学习“PHP免费学习笔记(深入)”;
以上就是PHP如何获取指定文件夹下最新创建的文件?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1253713.html
微信扫一扫
支付宝扫一扫