PHP : Trier un tableau en fonction de la longueur de ses valeurs ?
J'ai fait une machine à anagrammes et j'ai un tableau de correspondances positives. Le problème est qu'ils sont tous dans un ordre différent, je veux pouvoir trier le tableau afin que les valeurs de tableau les plus longues apparaissent en premier.
Quelqu'un a des idées sur la façon de faire cela?
Solution du problème
Ordre décroissant:
$array = ['aa', 'bb', 'c', 'ccc', 'a', 'ertre'];
usort($array, function($a, $b){
return strlen($a) < strlen($b);
});
var_export($array);
// Output
array (
0 => 'ertre',
1 => 'ccc',
2 => 'aa',
3 => 'bb',
4 => 'c',
5 => 'a',
)
Ordre croissant:
$array = ['aa', 'bb', 'c', 'ccc', 'a', 'ertre'];
usort($array, function($a, $b){
return strlen($a) > strlen($b);
});
// Output
array (
0 => 'c',
1 => 'a',
2 => 'aa',
3 => 'bb',
4 => 'ccc',
5 => 'ertre',
)
Commentaires
Enregistrer un commentaire