Heim Backend-Entwicklung PHP-Tutorial Wie sortiere ich Zeitstempel in einem Array unter Beibehaltung der Schlüsselnamen mit PHP?

Wie sortiere ich Zeitstempel in einem Array unter Beibehaltung der Schlüsselnamen mit PHP?

May 03, 2024 pm 10:36 PM
时间戳 排序

Das Array kann über die Funktion uasort() sortiert werden, wobei seine Schlüsselnamen erhalten bleiben. Um nach Zeitstempeln zu sortieren, können Sie die benutzerdefinierte Vergleichsfunktion „compare_timestamps“ verwenden, die die Zeitstempelfelder in Elementen vergleicht. Im konkreten Fall werden mit dieser Vergleichsfunktion die Zeitstempel im Array sortiert, die Schlüsselnamen bleiben erhalten und das sortierte Array wird von klein nach groß ausgegeben.

如何使用 PHP 对数组中的时间戳进行排序,保留键名?

Sortieren Sie ein Array nach Zeitstempel in PHP und behalten Sie dabei seine Schlüssel bei.

In PHP können wir die Funktion uasort() verwenden, um ein Array zu sortieren und dabei den Namen seines Schlüssels beizubehalten. Dies ist die Syntax zum Sortieren eines Arrays: uasort() 函数对数组进行排序,同时保留其键名。这是排序数组的语法:

uasort($array, $sort_function);
Nach dem Login kopieren

其中,$array 是要排序的数组,$sort_function 是用户定义的比较函数。

排序比较函数

排序比较函数必须遵循特定的格式:

function sort_function(mixed $a, mixed $b): int
Nach dem Login kopieren

它需要接受两个参数,$a$b,这些参数代表要比较的数组元素。函数应该返回以下值:

  • -1:如果 $a 应该排在 $b 之前。
  • 0:如果 $a 和 $b 相等。
  • 1:如果 $a 应该排在 $b 之后。

基于时间戳排序

要基于时间戳对数组进行排序,我们可以使用以下排序比较函数:

function compare_timestamps(mixed $a, mixed $b): int
{
    return $a['timestamp'] - $b['timestamp'];
}
Nach dem Login kopieren

此函数比较数组元素中的 timestamp

$array = [
    'item1' => ['timestamp' => 1593475200],
    'item2' => ['timestamp' => 1601260800],
    'item3' => ['timestamp' => 1584230400],
];

uasort($array, 'compare_timestamps');

print_r($array);
Nach dem Login kopieren

wobei $array das zu sortierende Array und $sort_function die benutzerdefinierte Vergleichsfunktion ist.

Sortiervergleichsfunktion

Die Sortiervergleichsfunktion muss einem bestimmten Format folgen:

Array
(
    [item3] => Array
        (
            [timestamp] => 1584230400
        )

    [item1] => Array
        (
            [timestamp] => 1593475200
        )

    [item2] => Array
        (
            [timestamp] => 1601260800
        )
)
Nach dem Login kopieren
Sie muss zwei Parameter akzeptieren, $a und $b Parameter Stellt die zu vergleichenden Array-Elemente dar. Die Funktion sollte den folgenden Wert zurückgeben:

  • -1: wenn $a vor $b stehen soll.
  • 0: Wenn $a und $b gleich sind.
  • 1: Wenn $a nach $b kommen soll.
🎜Sortierung nach Zeitstempel🎜🎜🎜Um ein Array nach Zeitstempel zu sortieren, können wir die folgende Sortiervergleichsfunktion verwenden: 🎜rrreee🎜Diese Funktion vergleicht den Zeitstempel im Array Elements-Code>-Feld und gibt den entsprechenden Wert zurück, um die Elemente in die richtige Reihenfolge zu bringen. 🎜🎜🎜 Praktisches Beispiel 🎜🎜🎜 Hier ist ein praktisches Beispiel für das Sortieren von Zeitstempeln in einem Array mithilfe unserer Sortierfunktion: 🎜rrreee🎜Ausgabe: 🎜rrreee🎜Wie Sie sehen können, wurde das Array in der Reihenfolge der Zeitstempel sortiert, wobei der Schlüsselname beibehalten wurde. 🎜

Das obige ist der detaillierte Inhalt vonWie sortiere ich Zeitstempel in einem Array unter Beibehaltung der Schlüsselnamen mit PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So sortieren Sie Fotos nach Aufnahmedatum in Windows 11/10 So sortieren Sie Fotos nach Aufnahmedatum in Windows 11/10 Feb 19, 2024 pm 08:45 PM

So sortieren Sie Fotos nach Aufnahmedatum in Windows 11/10

So sortieren Sie E-Mails in Outlook nach Absender, Betreff, Datum, Kategorie und Größe So sortieren Sie E-Mails in Outlook nach Absender, Betreff, Datum, Kategorie und Größe Feb 19, 2024 am 10:48 AM

So sortieren Sie E-Mails in Outlook nach Absender, Betreff, Datum, Kategorie und Größe

Golang-Zeitverarbeitung: So konvertieren Sie Zeitstempel in Golang in einen String Golang-Zeitverarbeitung: So konvertieren Sie Zeitstempel in Golang in einen String Feb 24, 2024 pm 10:42 PM

Golang-Zeitverarbeitung: So konvertieren Sie Zeitstempel in Golang in einen String

PHP-Entwicklung: So implementieren Sie Funktionen zum Sortieren und Paging von Tabellendaten PHP-Entwicklung: So implementieren Sie Funktionen zum Sortieren und Paging von Tabellendaten Sep 20, 2023 am 11:28 AM

PHP-Entwicklung: So implementieren Sie Funktionen zum Sortieren und Paging von Tabellendaten

So sortieren Sie in Excel So sortieren Sie in Excel Mar 05, 2024 pm 04:12 PM

So sortieren Sie in Excel

So sortieren Sie WPS-Ergebnisse So sortieren Sie WPS-Ergebnisse Mar 20, 2024 am 11:28 AM

So sortieren Sie WPS-Ergebnisse

So ordnen Sie mehrere Spalten in Power Query per Drag & Drop neu an So ordnen Sie mehrere Spalten in Power Query per Drag & Drop neu an Mar 14, 2024 am 10:55 AM

So ordnen Sie mehrere Spalten in Power Query per Drag & Drop neu an

Best Practices für das Erhalten von Zeitstempeln: Ein leistungsstarkes Tool in der Golang-Programmierung Best Practices für das Erhalten von Zeitstempeln: Ein leistungsstarkes Tool in der Golang-Programmierung Dec 29, 2023 am 08:28 AM

Best Practices für das Erhalten von Zeitstempeln: Ein leistungsstarkes Tool in der Golang-Programmierung

See all articles