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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Tri d'un tableau à plusieurs clés.


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 28
    Par défaut Tri d'un tableau à plusieurs clés.
    Bonjour,

    Dans un script php de test, je souhaiterais ranger un tableau contenant plusieurs clés.
    Pour exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for($i=0; $i < 80; $i++){
    	$test[][rand(100, 1500)] = 'c le test' . $i . '<br />';
    }
    Ce qui m'intéresserais, c'est de pouvoir trier ce tableau à partir de sa seconde clé. ( la ou se situe le rand(100, 1500) ).

    En parcourant un peu la doc php, j'ai lu qu'on ne pouvait pas utiliser "array_multisort" pour se cas de figure puisque cette fonction n'est pas prévu pour classer un tableau depuis la seconde colonne.

    Vient donc la solution "uasort", le problème c'est que je ne comprends pas trop comment utiliser uasort pour mon cas de figure.

    Si des âmes charitables peuvent me donner un petit coup de pouce, sa serait bien sympa.

    Merci par avance.

    Karl.

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Par défaut
    si ton tableau apparait avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $test[10][1010]  = 'c le test 10';
    $test[31][1010] = 'c le test 31';
    tu à prévu quoi ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 28
    Par défaut
    Si il y a une même valeur à la seconde colonne, je fais afficher les 2. ( Oui car ce code n'est pas le code original, mais juste une simplification de ce que je souhaiterais faire ).

    Donc en gros si je me retrouve avec 2 fois la même valeur, je l'affiche quand même car sa n'a aucune importance, ce qui est vraiment important, c'est qu'elle soit classé par ordre croissant à partir de la deuxième colonne du tableau, même si il y a des doublons.

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Par défaut
    a ce moment tu peu faire l'inverse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    for($i=0; $i < 80; $i++){
    	$test[rand(100, 1500)][] = 'c le test' . $i . '<br />';
    }
     
    ksort($test);
     
    foreach ( $test as $k => $v ){
      for($i=0; $i < count( $v); $i++){
        echo $v[$i];
      }
    }

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 28
    Par défaut
    Impec, sa marche. Merci beaucoup.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/12/2011, 13h12
  2. Tri d'un tableau de plusieurs colonnes + cellule vide
    Par Neophyte27 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/11/2010, 23h57
  3. Tri d'un tableau sur plusieurs pages
    Par Nemesis007 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 20/01/2010, 09h42
  4. Tri d'un tableau avec plusieurs colonnes
    Par beegees dans le forum Langage
    Réponses: 11
    Dernier message: 04/11/2008, 20h43
  5. Réponses: 7
    Dernier message: 10/03/2006, 19h09

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