从 microtimes 数组中获取最新信息

Get latest from array of microtimes

我正在遍历文件列表并获取它们的修改日期,该日期以微时间格式返回:

int(1633986072)
int(1633971686)
int(1634014866)
int(1634000474)

我可以遍历这些,但不确定哪个函数最适合识别哪个是最新的。

这里是strtotime最好的方法还是其他替代方法?

功能类似于filemtime return 时间作为 Unix 时间戳。时间戳可以收集在一个数组中。

$timeStamps = [
  1633986072,
  1633971686,
  1634014866,
  1634000474
];

您使用 max 函数获取最后一个值。

$lastTs = max($timeStamps);  //1634014866

使用 date 函数,您可以将时间戳显示为人类可读的当地时间。时区示例 Europe/Berlin:

echo date('Y-m-d H:i:s',$lastTs);  //2021-10-12 07:01:06

编辑:对于附加问题,我怎样才能 return 两个最高值?

为此,rsort用于按降序对时间戳进行排序。只要数组中有值,就可以通过索引轻松访问最高值、第二高等值。

rsort($timeStamps);
$lastTs = $timeStamps[0];  //1634014866
$last2Ts = $timeStamps[1]; //1634000474