glob()
是 PHP 中的一个函数,用于查找符合特定模式的文件路径名。它返回一个包含所有匹配文件的数组。
filemtime()
是 PHP 中的一个函数,用于获取文件的最后修改时间。返回的时间戳可以转换为日期和时间。
使用 glob()
和 filemtime()
结合可以方便地查找并处理特定模式的文件,并根据文件的最后修改时间进行排序或筛选。
glob()
返回的是一个数组。filemtime()
返回的是一个整数,表示文件的最后修改时间的时间戳。例如,你可能需要查找某个目录下最近修改的文件,或者清理一段时间内未修改的旧文件。
以下是一个示例代码,展示如何使用 glob()
和 filemtime()
来查找并排序某个目录下最近修改的 PHP 文件:
<?php
$dir = '/path/to/directory'; // 替换为你的目录路径
$pattern = $dir . '/*.php'; // 查找所有 PHP 文件
// 使用 glob() 获取文件列表
$files = glob($pattern);
if ($files !== false) {
// 使用 usort() 根据 filemtime() 排序
usort($files, function($a, $b) {
return filemtime($b) - filemtime($a);
});
// 输出排序后的文件列表及其最后修改时间
foreach ($files as $file) {
echo "File: " . $file . "\tLast Modified: " . date('Y-m-d H:i:s', filemtime($file)) . "\n";
}
} else {
echo "No files found.";
}
?>
glob()
返回空数组原因:
解决方法:
$dir = '/path/to/directory';
if (!is_dir($dir)) {
echo "Directory does not exist.";
exit;
}
filemtime()
返回 false原因:
解决方法:
$file = '/path/to/file.php';
if (!file_exists($file)) {
echo "File does not exist.";
exit;
}
if (!is_readable($file)) {
echo "File is not readable.";
exit;
}
通过以上方法,你可以有效地使用 glob()
和 filemtime()
来处理文件,并解决常见的相关问题。
领取专属 10元无门槛券
手把手带您无忧上云