Maison > Article > développement back-end > Comment trier les horodatages dans un tableau, en préservant les noms de clés, en utilisant PHP ?
Le tableau peut être trié via la fonction uasort(), en préservant ses noms de clés. Pour trier en fonction des horodatages, vous pouvez utiliser la fonction de comparaison personnalisée compare_timestamps, qui compare les champs d'horodatage des éléments. Dans le cas réel, cette fonction de comparaison est utilisée pour trier les horodatages dans le tableau, les noms de clés sont conservés et le tableau trié est affiché du plus petit au plus grand.
Trier un tableau par timestamp en PHP tout en préservant ses clés
En PHP, on peut utiliser la fonction uasort()
pour trier un tableau tout en préservant le nom de ses clés. Voici la syntaxe pour trier un tableau : uasort()
函数对数组进行排序,同时保留其键名。这是排序数组的语法:
uasort($array, $sort_function);
其中,$array
是要排序的数组,$sort_function
是用户定义的比较函数。
排序比较函数
排序比较函数必须遵循特定的格式:
function sort_function(mixed $a, mixed $b): int
它需要接受两个参数,$a
和 $b
,这些参数代表要比较的数组元素。函数应该返回以下值:
-1
:如果 $a 应该排在 $b 之前。0
:如果 $a 和 $b 相等。1
:如果 $a 应该排在 $b 之后。基于时间戳排序
要基于时间戳对数组进行排序,我们可以使用以下排序比较函数:
function compare_timestamps(mixed $a, mixed $b): int { return $a['timestamp'] - $b['timestamp']; }
此函数比较数组元素中的 timestamp
$array = [ 'item1' => ['timestamp' => 1593475200], 'item2' => ['timestamp' => 1601260800], 'item3' => ['timestamp' => 1584230400], ]; uasort($array, 'compare_timestamps'); print_r($array);où
$array
est le tableau à trier et $sort_function
est la fonction de comparaison définie par l'utilisateur. Fonction de comparaison de tri
La fonction de comparaison de tri doit suivre un format spécifique :Array ( [item3] => Array ( [timestamp] => 1584230400 ) [item1] => Array ( [timestamp] => 1593475200 ) [item2] => Array ( [timestamp] => 1601260800 ) )Elle doit accepter deux paramètres,
$a
et $b
. paramètres Représente les éléments du tableau à comparer. La fonction doit renvoyer la valeur suivante :
-1
: si $a doit être placé avant $b. 0
: Si $a et $b sont égaux. 1
: Si $a doit venir après $b. timestamp dans le tableau elements code> champ et renvoie la valeur appropriée pour placer les éléments dans l'ordre. 🎜🎜🎜 Exemple pratique 🎜🎜🎜 Voici un exemple pratique de tri des horodatages dans un tableau à l'aide de notre fonction de tri : 🎜rrreee🎜Sortie : 🎜rrreee🎜Comme vous pouvez le voir, le tableau a été trié par ordre d'horodatage tout en conservant le nom de la clé. 🎜
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!