trier un array selon la taille des chaines

Mammouth du PHP | 737 Messages

12 août 2011, 16:16

Bonjour,

Je cherche le moyen de trier un tableau selon un critère perso à savoir la taille d'une chaine enregistrée dans mon array.

Il ne s'agit pas d'un tri sur l'indice, ni d'un tri alphabétique mais bien un tri spécifique selon le nombre de caractères.

Exemple :

Code : Tout sélectionner

1 -> Vincent //7 caractères 2 -> Jean // 4 caractères 3 -> Alexandre //9 caractères 4 -> Damien //6 caractères
doit donner

Code : Tout sélectionner

3 -> Alexandre //9 caractères 1 -> Vincent //7 caractères 4 -> Damien //6 caractères 2 -> Jean // 4 caractères
ou

Code : Tout sélectionner

2 -> Jean // 4 caractères 4 -> Damien //6 caractères 1 -> Vincent //7 caractères 3 -> Alexandre //9 caractères
Est-ce que c'est faisable nativement comme pour la famille des sort() sous PHP ?

Mega
;)
Dyslexics are teople poo

ViPHP
ViPHP | 2577 Messages

12 août 2011, 16:27

Bonjour,

Je te conseille la fonction uasort() ou usort() qui permet de définir la fonction de comparaison.

Les exemples doivent te permettre de réaliser ce que tu veux : http://www.php.net/manual/fr/function.uasort.php