PHP - 根据文件名模式查找最新文件



我有一堆游戏玩家数据。数据存储为 json,文件名模式为gamerid_date_time_seed.json。例如:

8841-2018-05-03-09-56-14-2118-data.json
8841-2018-05-03-10-50-22-1568-data.json
8841-2018-05-04-04-36-51-6081-data.json
8841-2018-05-04-06-56-50-1100-data.json

例如,在第一个文件名中,2018-05-03-09-56-14year-month-date-hour-min-sec格式。8841是玩家 ID 和最后 4 位数字,在这种情况下2118是可以忽略的种子值。

如何解析它,以便我只获得游戏玩家的最新数据文件?(在本例中为 8841-2018-05-04-06-56-50-1100-data.json(问题是有时游戏玩家可能有多个文件,但在同一天。

我不太擅长正则表达式和其他东西,所以我真的很感激这里的一些帮助。

您可以使用 glob 函数获取文件数组,并反向排序以获取最新文件作为数组中的第一项。

$gamerid = 8441;
$files = glob("filepath/".$gamerid."-*.json");
rsort($files);
$newestFile = $files[0];

最新更新