按升序具有较小值的php uniqid
在名为按升序具有较小值的php uniqid,php,Php,在名为images的文件夹中,我有如下图像: 5ac7d5f6b23d3.jpg 名称使用phpuniqid函数给出,文件夹images按名称升序排序 现在我正在创造一个新的形象 是否有一种方法-使用uniqid或任何其他函数-来指定新图像的名称-因此它是按升序排列的第一个 所以使用 $array = glob('images/*.jpg'); print_r($array); 新映像应该是数组中的第一个可以用来扫描目录中的所有文件并读取每个文件的mtime(修改时间)。将它们作为密钥存
images
的文件夹中,我有如下图像:
5ac7d5f6b23d3.jpg
名称使用phpuniqid
函数给出,文件夹images
按名称升序排序
现在我正在创造一个新的形象
是否有一种方法-使用uniqid或任何其他函数
-来指定新图像的名称-因此它是按升序排列的第一个
所以使用
$array = glob('images/*.jpg');
print_r($array);
新映像应该是数组中的第一个可以用来扫描目录中的所有文件并读取每个文件的mtime(修改时间)。将它们作为密钥存储到数组中,我们可以对密钥进行降序排序以获得最新的文件
$latestFilename = reset($mtimes);
这将找到任何文件,因为这里没有使用glob模式。如果需要模式,还可以使用重写
现在,让我们扫描目录中的所有文件,并忽略其他目录
$mtimes = [];
foreach (new DirectoryIterator('./images') as $fileInfo) {
if($fileInfo->isDir()) continue;
$mtimes[$fileInfo->getMTime()] = $fileInfo->getFilename();
}
按键对数组进行反向排序(降序)
抓取第一个元素,它是最新的文件
$latestFilename = reset($mtimes);
在图像文件名前面加一个排序前缀,例如
00000001\uu
,00000002\u
等。uniqid
函数支持前缀参数。您可以按mtime(修改时间)排序使用@MarkusZeller-你的意思是-首先按修改时间降序排列文件夹图像
,然后转到glob…
No,根本不使用glob。当您拥有所有的值并按mtime降序排列时,您已经拥有了最新的文件,这是第一个条目。迭代器扩展了SplFileInfo,它为您提供了任何文件的详细信息。您能写一个例子吗,请-我需要按日期下降排序的文件数组,文件数组在哪里?$mtimes
包含所有文件。您可以使用foreach($mtimes as$mtime=>$filename)echo“$filename上次修改时间为$mtime\n”遍历所有文件代码>