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 d'un tableau numérique multi-dimensions


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 52
    Par défaut [Tableaux] Tri d'un tableau numérique multi-dimensions
    Bonjour,

    J'ai un tableau contennant des données numéraires s'établissant de la façon suivante:

    $test[2007][10]=10;
    $test[2006][8]=5;
    $test[2007][5]=9;
    $test[2007][9]=14;

    je souhaiterais le trier pour obtenir ceci

    $test[2006][8]=5;
    $test[2007][9]=14;
    $test[2007][5]=9;
    $test[2007][10]=10;

    c'est a dire d'abord sur le premier indice ( ici ce sont des années) puis pour chaque année, sur l'indice suivant (le mois).

    J'ai bien vu array_multisort mais je ne m'en sort pas. Quelqu'un peut-il m'aider sur ce point?

    Merci d'avance,

  2. #2
    Membre chevronné Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Par défaut
    Bonjour,

    Je ne comprend pas le tri sur le mois :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $test[2006][8]=5;
    $test[2007][9]=14; 
    $test[2007][5]=9; 
    $test[2007][10]=10;
    Pour 2007, tu mets 9, puis 5 puis 10 ?? serais tu tomber dans un trou spaciaux temporel ?

    Gillou

  3. #3
    Membre chevronné Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Par défaut
    ca devrait marcher avec ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    <?php
    $test = array();
    $test[2007][10]=10;
    $test[2006][8]=5;
    $test[2007][5]=9; 
    $test[2007][9]=14; 
     
    ksort ($test);
     
    $array2 = array();
    foreach ($test as $annee => $arr_mois) {
      ksort ($arr_mois);
      $array2[$annee] = $arr_mois;
    }
     
    echo "<pre>";
    print_r($array2);
    echo "</pre>";
    ?>
    Gillou

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 52
    Par défaut Super!!!
    Merci Gilou, c'est exactement ça!!

    Super!

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/12/2011, 13h12
  2. [Tableaux] Tri d'un tableau associatif à 2 dimensions
    Par phpiste dans le forum Langage
    Réponses: 2
    Dernier message: 31/10/2007, 09h24
  3. [Tableaux] Tri sur un tableau à 2 dimensions
    Par DrOOMMgba dans le forum Langage
    Réponses: 4
    Dernier message: 03/04/2007, 19h47
  4. [Tableaux] Tri d'un tableau multi-dimensions
    Par lodan dans le forum Langage
    Réponses: 6
    Dernier message: 05/12/2006, 10h08
  5. [Tableaux] tri sur un tableau multi-dimensionnel
    Par nicoaix dans le forum Langage
    Réponses: 1
    Dernier message: 12/04/2006, 21h23

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