假设有一个名为“abc”的目录在最近添加到的目录中获取最新的15个文件php
此目录包含文件数。在所有这些文件中,我只想在php中使用数组中最新的“X”或最新的15个文件(如果可能的话使用glob函数)。
每一个帮助将是非常可观的。
假设有一个名为“abc”的目录在最近添加到的目录中获取最新的15个文件php
此目录包含文件数。在所有这些文件中,我只想在php中使用数组中最新的“X”或最新的15个文件(如果可能的话使用glob函数)。
每一个帮助将是非常可观的。
//进行文件搜索
$ DIR = “/等/ PHP5/*” 目录;
//获得与在$文件
$文件=水珠指定了四个扩展名的文件($目录,GLOB_BRACE。 “* {扩展名1,扩展名2,extension3,extension4}。”);
//将获得$文件的文件名和文件时间
$文件= array_combine($文件,array_map( “filemtime”,$文件));
//将根据数值文件进行排序,那就是 “文件时间”
arsort($文件);
//我们不要求时间了,所以将只得到文件名(这是作为数组的键)
$文件= array_keys($文件);
$ starting_index = 0; $ limit = 15;
//将限制导致阵列按我们要求
$文件= array_slice($文件,$ STARTING_INDEX,$限制);
//将打印最终阵列
回声“最新$限制文件如下:” print_r($ files);
请改善我,如果我错了
使用功能张贴在这里:http://code.tutsplus.com/tutorials/quick-tip-loop-through-folders-with-phps-glob--net-11274
$dir = "/etc/php5/*";
// Open a known directory, and proceed to read its contents
foreach(glob($dir) as $file)
{
echo "filename: $file : filetype: " . filetype($file) . "<br />";
}
,并使用您的foreach循环内filetime()
功能为IF
声明:http://php.net/manual/en/function.filemtime.php
的一种方式做到这一点,它比水珠是使用RecursiveDirectoryIterator
$dir = new \RecursiveDirectoryIterator('path/to/folder', \FilesystemIterator::SKIP_DOTS);
$it = new \RecursiveIteratorIterator($dir, \RecursiveIteratorIterator::SELF_FIRST);
$it->setMaxDepth(99); // search for other folders and they child folders
$files = [];
foreach ($it as $file) {
if ($file->isFile()) {
var_dump($file);
}
}
或者如果你还想要它wi日水珠
$files = glob('folder/*.{jpg,png,gif}', GLOB_BRACE);
foreach($files as $file) {
var_dump($file);
}
你甚至尝试过什么吗? – Rizier123
谢谢大家宝贵的时间和帮助。 但是,我自己试了一下,我也得到了答案,我只是将它作为答案发布 – gehlotparesh