假設我們有一個事件數組,鍵是時間戳,值是事件描述:
<?php
$events = [
1685702400 => '事件A發生',
1685788800 => '事件B發生',
1685616000 => '事件C發生',
];
// 使用 krsort 對數組按鍵(時間戳)進行倒序排序
krsort($events);
foreach ($events as $timestamp => $event) {
echo date('Y-m-d H:i:s', $timestamp) . " - $event\n";
}
?>
運行結果:
2023-06-03 00:00:00 - 事件B發生
2023-06-02 00:00:00 - 事件A發生
2023-06-01 00:00:00 - 事件C發生
通過krsort ,事件按照時間倒序排列,最新的事件在最前面。
有時事件不僅是簡單的描述,而是包含多個字段,比如標題、內容等。我們依然可以用時間戳作為外層數組的鍵,方便使用krsort 。
<?php
$events = [
1685702400 => [
'title' => '事件A',
'content' => '事件A的詳細內容',
],
1685788800 => [
'title' => '事件B',
'content' => '事件B的詳細內容',
],
1685616000 => [
'title' => '事件C',
'content' => '事件C的詳細內容',
],
];
krsort($events);
foreach ($events as $timestamp => $event) {
echo date('Y-m-d H:i:s', $timestamp) . " - {$event['title']}: {$event['content']}\n";
}
?>
同樣可以得到時間倒序排列的事件列表。
krsort根據數組鍵名逆向排序,適合時間戳排序。
用時間戳作為數組鍵時, krsort可以快速實現倒序排列。
事件記錄可以是簡單字符串,也可以是複雜結構, krsort都適用。
排序後可用foreach遍歷,按最新事件優先輸出。
掌握了krsort ,你就可以更靈活地對基於時間的數據進行倒序處理,方便開發日誌系統、時間軸展示等功能。