Ce que dit le titre. Plus précisément, si j'ai
$array1['name'] = 'zoo';
$array2['name'] = 'fox';
Comment puis-je déterminer que par ordre alphabétique $array2
Le nom de la personne devrait figurer au-dessus de $array1
's ?
Ce que dit le titre. Plus précisément, si j'ai
$array1['name'] = 'zoo';
$array2['name'] = 'fox';
Comment puis-je déterminer que par ordre alphabétique $array2
Le nom de la personne devrait figurer au-dessus de $array1
's ?
Utilisez [strcmp](http://www.php.net/strcmp)
. Si le premier argument de strcmp est lexicographiquement plus petit que le second, alors la valeur retournée sera négative. Si les deux sont égaux, alors elle renverra 0. Et si le premier est lexicographiquement plus grand que le second, alors un nombre positif sera renvoyé.
nb. Vous voulez probablement utiliser [strcasecmp](http://www.php.net/strcasecmp)(string1,string2)
qui ignore le cas...
Je suis un peu en retard (mais je n'étais pas encore programmeur en 2009 :-) Personne ne l'a encore mentionné, mais vous pouvez simplement utiliser les opérateurs que vous utilisez pour les nombres également.
< > <= >= == !=
et plus
Par exemple :
'a' > 'b'
renvoie à false
'a' < 'b'
renvoie à true
http://php.net/manual/en/language.operators.comparison.php
IMPORTANT
Il y a une faille, que vous pouvez trouver dans les commentaires ci-dessous.
J'utilise souvent natsort
( Tri naturel ), puisque je souhaite généralement conserver le tableau pour une utilisation ultérieure.
Exemple :
natsort($unsorted_array);
var_dump($usorted_array); // will now be sorted.
EDIT vient de réaliser des valeurs à partir de tableaux différents, pourrait-elle matrice_fusion d'abord mais pas sûr que ce soit ce que vous voulez
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
0 votes
Vous pourriez trouver
s($array1['name'])->compareTo($array2['name'])
os($array1['name'])->compareToIgnoreCase($array2['name'])
utile, comme on le trouve dans cette bibliothèque autonome .