Page 1 sur 1

[Tableau] Tri sur une longueur de chaine

Posté : 17 juin 2021, 14:12
par Pouy
Bonjour,
mes connaissances en la matière sont plus proche de l'archéologie que de la technologie et un peu d'aide ne serait pas de refus.

Je suis amené à ajuster un traitement PHP qui s'intègre dans un traitement bien plus vaste.
J'ai un tableau qui est issu d'une recherche dans une ontologie et est renvoyé dans une liste.

Voici la simulation d'une recherche sur "B".
Réponse retournée :
[00000001] A B C
[00000002] B A
[00000003] B C
[00000004] A B

Lors de la réponse à la recherche, celui-ci est trié par la position du mot dans la chaine ainsi que le nombre de mot trouvé. J'aimerais pouvoir proposer les libellés les plus court en premier.
Le résultat souhaité est :
[00000002] B A
[00000003] B C
[00000004] A B
[00000001] A B C

Merci pour votre aide et bonne journée.

Re: [Tableau] Tri sur une longueur de chaine

Posté : 18 juin 2021, 15:07
par Ryle
Salutations !

Pour trier un tableau selon la taille de ses valeurs, Tu peux utiliser la fonction usort() et définir la méthode de tri :
function tri($a, $b){
    return strlen($b) - strlen($a); 
}
usort($tableau,'tri');