Le contenu partagé avec vous dans cet article concerne la fonction de tri des tableaux PHP. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
S'il y a u
dans la fonction, vous pouvez personnaliser la fonction de comparaison ; s'il y a k
, vous pouvez le trier par clé ; inverse), ce sera dans l'ordre inverse ; s'il y a r
doit être une association clé-valeur Sauf pour a(association)
rsort()
usort()
sort()
, tout le reste sans shuffle()
est une clé-valeur. association. a
l'association clé-valeur est conservée, mais les types numériques ne sont pas conservés. array_multisort()
asort
arsort
a réalisé un tri stable, un tri stable php5 : http://php.net/manual/zh/func...uasort
bool array_multisort ( array &$array1 [, mixed $array1_sort_order = SORT_ASC [, mixed $array1_sort_flags = SORT_REGULAR [, mixed $... ]]] )
Drapeau de type de tri :
- SORT_REGULAR (par défaut) - comparez les éléments de la manière habituelle (sans modifier le type , Les lettres majuscules sensibles à la casse seront triées avant les lettres minuscules)
- SORT_NUMERIC - Comparez selon la taille numérique
- SORT_STRING - Comparez selon la taille numérique string (sensible à la casse)
- SORT_LOCALE_STRING - Compare les chaînes en fonction des paramètres de localisation actuels. Il utilise des informations locales, qui peuvent être modifiées via setlocale().
- SORT_NATURAL - "ordre naturel" des chaînes, similaire à natsort()
- SORT_FLAG_CASE - peut être combiné (OU au niveau du bit) SORT_STRING Ou SORT_NATURAL pour trier les chaînes sans tenir compte de la casse.
sera trié en fonction du résultat de $array2
, comme le $array1
group by
$array = array('Alpha', 'atomic', 'Beta', 'bank'); $array_lowercase = array_map('strtolower', $array); // 先复制一个转为小写数组 array_multisort($array_lowercase, SORT_ASC, SORT_STRING, $array); // 先对小写数组排序,再排序原数组 print_r($array);
function array_orderby() { $args = func_get_args(); $data = array_shift($args); foreach ($args as $n => $field) { if (is_string($field)) { $tmp = array(); foreach ($data as $key => $row) $tmp[$key] = $row[$field]; $args[$n] = $tmp; } } $args[] = &$data; call_user_func_array('array_multisort', $args); return array_pop($args); }
bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
. sort($fruits, SORT_NATURAL | SORT_FLAG_CASE);
natcasesort()
bool rsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
bool asort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
bool arsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
键名
bool ksort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
键名
bool krsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
值
bool usort ( array &$array , callable $value_compare_func )
est inférieur, égal ou supérieur à $value_compare_func( mixed $a, mixed $b )
, la fonction de comparaison doit renvoyer un inférieur à , égal à, ou Un entier supérieur à 0. $a
$b
usort($a, array("TestObj", "cmp_obj"))
bool uasort ( array &$array , callable $value_compare_func )
键名
bool uksort ( array &$array , callable $key_compare_func )
bool natcasesort ( array &$array )
bool natsort ( array &$array )
bool shuffle ( array &$array )
Introduction à 10 fonctions de chaîne couramment utilisées en PHP et comment les utiliser
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!