[Tableau] Tri sur une longueur de chaine

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [Tableau] Tri sur une longueur de chaine

Re: [Tableau] Tri sur une longueur de chaine

par Ryle » 18 juin 2021, 15:07

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');

[Tableau] Tri sur une longueur de chaine

par Pouy » 17 juin 2021, 14:12

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.