You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PHP中按last_modified列值对二维数组进行排序

解决方案

你可以使用PHP内置的usort()(不保留原数组键名)或者uasort()(保留原数组键名)函数实现自定义排序,根据last_modified的时间戳值排序即可。

1. 排序代码(PHP 7.0+ 推荐写法,用太空船运算符)

按修改时间升序(旧内容在前,新内容在后)

usort($arr, function($a, $b) {
    return $a['last_modified'] <=> $b['last_modified'];
});

按修改时间降序(新内容在前,旧内容在后)

把上面的$a和$b互换位置即可:

usort($arr, function($a, $b) {
    return $b['last_modified'] <=> $a['last_modified'];
});

2. 兼容低版本PHP的写法

如果你的PHP版本低于7.0不支持太空船运算符,用普通数值比较即可:

usort($arr, function($a, $b) {
    // 你的last_modified本身是时间戳格式字符串,也可以直接转int比较:(int)$a['last_modified'] - (int)$b['last_modified']
    return strtotime($a['last_modified']) - strtotime($b['last_modified']);
    // 要改成降序就反过来写 $b减$a
});

3. 完整使用示例

排序完成后你原来的输出代码不需要修改,直接沿用即可:

// 第一步先执行排序
usort($arr, function($a, $b) {
    return $b['last_modified'] <=> $a['last_modified'];
});

// 原有输出逻辑不变
$position = 0;
while ($position < count($arr)) {
    echo $arr[$position]["name"] . " - ";
    echo date('d/m/Y - H:i', $arr[$position]["last_modified"]) . "<br>\n";
    $position = $position + 1;
}

内容的提问来源于stack exchange,提问作者melk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.16 18:06:03