IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Tableaux] Tri par ordre alphabétique d'un tableau multidimensionnel [Fait]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 186
    Points : 71
    Points
    71
    Par défaut [Tableaux] Tri par ordre alphabétique d'un tableau multidimensionnel
    Voilà mon problème j'ai un tableau de type:

    liste=array(uid=...,name=...);
    je voudrai le trier par ordre alphabétique mais en fonction de la colonne 'name';
    j'ai essayer avec array_multisort mais je n'ai pas réussi à l'utiliser pour mon cas,
    et avec natcasesort il prend en compte la colonne 'uid'.
    Si vous avez une solution à mon problème je l'attend avec impatience.

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 329
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 329
    Points : 15 672
    Points
    15 672
    Par défaut
    pour trier cette liste tu peux utiliser la fonction http://php.net/usort

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 186
    Points : 71
    Points
    71
    Par défaut
    j'ai essayer ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function compare($a, $b) 
    {
        return strcmp($a["name"], $b["name"]);
    }
     
    function tri_ordre_alphabetique ($liste)
    {
    	usort($liste, "compare");
    	return $liste;
    }
    mais ça ne donne rien...

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 186
    Points : 71
    Points
    71
    Par défaut
    Pas d'idées??

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 186
    Points : 71
    Points
    71
    Par défaut
    Ma solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function tri_ordre_alphabetique($liste){
    	usort($liste, create_function('$a,$b','return $a["name"]<$b["name"];'));
    	return $liste;
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Tri étendu par ordre alphabétique sur un tableau aux dimensions dynamiques
    Par atk_49 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 17/03/2014, 15h03
  2. problème tri par ordre alphabétique
    Par bibi 8002 dans le forum Word
    Réponses: 17
    Dernier message: 18/06/2008, 15h21
  3. Réponses: 8
    Dernier message: 26/07/2007, 11h46
  4. [Tableaux] dossiers par ordre alphabétique
    Par ctrl+z dans le forum Langage
    Réponses: 4
    Dernier message: 03/04/2007, 12h18
  5. Tri par ordre alphabétique
    Par orus8 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 17/04/2003, 19h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo