Maison > Article > développement back-end > Quelles sont les méthodes de tri des tableaux en php
En PHP, le tableau est un type de données très important, qui peut stocker une série de données et peut être facilement utilisé. Lorsque nous devons trier un tableau, PHP fournit de nombreuses fonctions et méthodes intégrées.
Cet article présentera les méthodes de tri de tableaux couramment utilisées en PHP, notamment les suivantes :
La fonction array_sort() est personnalisée en PHP Une fonction qui peut être utilisé pour trier un tableau. Lors de l'appel de cette fonction, vous devez transmettre deux paramètres. Le premier paramètre est le tableau à trier et le deuxième paramètre est la méthode de tri. Vous pouvez utiliser SORT_ASC et SORT_DESC.
Ce qui suit est un exemple d'utilisation de la fonction array_sort() pour trier un tableau :
function array_sort($arr,$keys,$type=SORT_ASC){ $keysvalue = array(); foreach($arr as $key=>$val){ $keysvalue[$key] = $val[$keys]; } if($type == SORT_ASC){ asort($keysvalue); }else{ arsort($keysvalue); } reset($keysvalue); foreach($keysvalue as $key=>$vals) { $keysort[$key] = $key; } $new_array = array(); foreach($keysort as $key=>$val) { $new_array[$val] = $arr[$val]; } return $new_array; }
Usage :
$arr = array(
array('id'=>1,'name'=>'Tom','age'=>20), array('id'=>2,'name'=>'Jerry','age'=>18), array('id'=>3,'name'=>'Lucy','age'=>22)
);
$arr = array_sort($arr,'age',SORT_DESC ) ;
print_r($arr);
Résultat de sortie :
Array
(
[0] => Array ( [id] => 3 [name] => Lucy [age] => 22 ) [1] => Array ( [id] => 1 [name] => Tom [age] => 20 ) [2] => Array ( [id] => 2 [name] => Jerry [age] => 18 )
)
La fonction tri() est l'une des fonctions de tri couramment utilisées en PHP, principalement pour tableaux Trier. Il peut être trié par ordre croissant ou décroissant, ou il peut conserver la relation d'index du tableau inchangée.
Ce qui suit est un exemple d'utilisation de la fonction sort() pour trier un tableau :
$arr = array(3,1,4,2,5);
sort($arr);
print_r($arr) ;
Résultat de sortie :
Array
(
[0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5
)
La fonction asort() est une méthode de tri des tableaux. Elle peut être triée par ordre croissant ou décroissant, mais elle sera conservée. la relation d'index du tableau inchangée. Lorsque vous utilisez la fonction asort(), elle trie le tableau en fonction de ses valeurs.
Ce qui suit est un exemple d'utilisation de la fonction asort() pour trier un tableau :
$arr = array(3,1,4,2,5);
asort($arr);
print_r($arr) ;
Résultat de sortie :
Array
(
[1] => 1 [3] => 2 [0] => 3 [2] => 4 [4] => 5
)
ksort() est une méthode de tri des tableaux. Elle peut être triée par ordre croissant ou décroissant, mais elle sera conservée. la relation entre les clés et les valeurs du tableau inchangée.
Ce qui suit est un exemple d'utilisation de la fonction ksort() pour trier un tableau :
$arr = array('d'=>'Dog','a'=>'Apple','c'= > 'Cat','b'=>'Boy');
ksort($arr);
print_r($arr);
Résultat de sortie :
Array
(
[a] => Apple [b] => Boy [c] => Cat [d] => Dog
)
La fonction usort() est une méthode de tri des tableaux. Elle est différente des autres fonctions de tri. La fonction usort() vous permet de personnaliser un algorithme de tri. Lorsque vous utilisez la fonction usort(), vous pouvez spécifier une fonction de comparaison qui comparera les valeurs du tableau en fonction d'un critère souhaité (comme le nombre de caractères contenus dans la chaîne ou la taille du nombre).
Voici un exemple d'utilisation de la fonction usort() pour trier un tableau :
function cmp($a, $b)
{
if ($a == $b) return 0; return ($a < $b) ? -1 : 1;
}
$arr = array(3,1,4,2,5 ) ;
usort($arr, "cmp");
print_r($arr);
Résultat de sortie :
Array
(
[0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5
)
uasort() la fonction est dans PHP Une fonction de tri similaire à la fonction usort() et vous permettant de personnaliser l'algorithme de tri. Mais contrairement à la fonction usort(), elle conserve les valeurs clés du tableau inchangées.
Ce qui suit est un exemple d'utilisation de la fonction uasort() pour trier un tableau :
function cmp($a, $b)
{
if ($a == $b) return 0; return ($a < $b) ? -1 : 1;
}
$arr = array('d'=>'Dog ', 'a'=>'Pomme','c'=>'Cat','b'=>'Garçon');
uasort($arr, "cmp");
print_r($arr) ;
Résultat de sortie :
Array
(
[a] => Apple [b] => Boy [c] => Cat [d] => Dog
)
La fonction uksort() est une fonction de tri en PHP. Elle est similaire à la fonction ksort() et peut également être dans. manière de trier par ordre croissant ou décroissant. Mais contrairement à la fonction ksort(), elle vous permet de personnaliser l'algorithme de tri et de maintenir inchangée la relation entre les clés et les valeurs.
Voici un exemple d'utilisation de la fonction uksort() pour trier un tableau :
function cmp($a, $b)
{
if ($a == $b) return 0; return ($a < $b) ? -1 : 1;
}
$arr = array('d'=>'Dog' , 'a'=>'Apple','c'=>'Cat','b'=>'Boy');
uksort($arr, "cmp");
print_r($arr);
Résultat de sortie :
Array
(
[a] => Apple [b] => Boy [c] => Cat [d] => Dog
)
La fonction natsort() est une fonction de tri en PHP. Elle trie un tableau en fonction de nombres naturels, ce qui peut ne pas être très utilisateur. -convivial. Intuitif car il compare les nombres dans des chaînes de nombres.
Ce qui suit est un exemple d'utilisation de la fonction natsort() pour trier un tableau :
$arr = array('img12.png', 'img10.png', 'img2.png', 'img1.png') ;
natsort($arr);
print_r($arr);
Résultat de sortie :
Array
(
[3] => img1.png [2] => img2.png [1] => img10.png [0] => img12.png
)
arsort()函数是PHP中的一种排序函数,它可以按照降序方式将数组中的元素进行排序。该函数不会保留原来数组中的键(key)与值(value)之间的关系。
下面是一个使用arsort()函数对数组进行排序的例子:
$arr = array(3,1,4,2,5);
arsort($arr);
print_r($arr);
输出结果:
Array
(
[4] => 5 [2] => 4 [0] => 3 [1] => 1 [3] => 2
)
rsort()函数是PHP中常用的排序函数之一,它可以按照降序的方式来排序。该函数不会保留原来数组中的键(key)与值(value)之间的关系。
下面是一个使用rsort()函数对数组进行排序的例子:
$arr = array(3,1,4,2,5);
rsort($arr);
print_r($arr);
输出结果:
Array
(
[0] => 5 [1] => 4 [2] => 3 [3] => 2 [4] => 1
)
总结:
以上介绍了PHP中常用的数组排序方法,包括array_sort()函数、sort()函数、asort()函数、ksort()函数、usort()函数、uasort()函数、uksort()函数、natsort()函数、arsort()函数和rsort()函数。不同的排序函数有不同的需求和使用场景,开发者应根据具体的需求来选择合适的排序函数。
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!