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] Récupérer une valeur en fonction d'un clé dans un tableau


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Inscrit en
    Juillet 2006
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 747
    Points : 185
    Points
    185
    Par défaut [Tableaux] Récupérer une valeur en fonction d'un clé dans un tableau
    Bonjour a tous

    je dispose du tableau suivant :

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
     
    Array
    (
        [0] => Array
            (
                [TCount] => 
                [Count] => 3
                [Element] => Array
                    (
                        [Cle] => 41
                        [Position] => 1
                        [RefMessage] => 23
                    )
     
                [Element1] => Array
                    (
                        [Cle] => 42
                        [Position] => 2
                        [RefMessage] => 24
                    )
     
                [Element2] => Array
                    (
                        [Cle] => 43
                        [Position] => 3
                        [RefMessage] => 23
                    )
     
            )
     
        [1] => Array
            (
                [TCount] => 
                [Count] => 4
                [Element] => Array
                    (
                        [Cle] => 21
                        [Position] => 1
                        [RefMessage] => 23
                    )
     
                [Element1] => Array
                    (
                        [Cle] => 1
                        [Position] => 2
                        [RefMessage] => 21
                    )
     
                [Element2] => Array
                    (
                        [Cle] => 3
                        [Position] => 4
                        [RefMessage] => 23
                    )
     
                [Element3] => Array
                    (
                        [Cle] => 4
                        [Position] => 5
                        [RefMessage] => 22
                    )
     
            )
     
    )
    J'aurai aimé récupéré les valeurs associés a la clé "Cle" pour les concaténer dans un string (les clés étant séparés par un - dans le string).

    Merci a qui pourrait m'aider a faire cela

  2. #2
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut
    Je pense à quelque chose du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $result = "";
    foreach($tablniveau1 as $tablniveau2) {
      foreach($tablniveau2 as $tabl) {
         $result .= $tabl['Cle'];
         $result .= ' - ';
      }
    }
    Il faut aussi retirer le dernier - à la fin de la boucle.

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Points : 624
    Points
    624
    Par défaut
    Pour avoir direct la bonne chaine sans le dernier '-' :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $result = '';
    $ = 0;
    foreach($tablniveau1 as $tablniveau2) {
      foreach($tablniveau2 as $tabl) {
         $result .= ($i ? ' - ': '').$tabl['Cle'];
         $i++;
      }
    }
    Si vous avez un message d'erreur, n'oubliez pas de le lire, la réponse à votre problème est surement dedans !

  4. #4
    Membre habitué
    Inscrit en
    Juillet 2006
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 747
    Points : 185
    Points
    185
    Par défaut
    Merci beaucoup mais ca ne me convient pas parfaitement. Le résultat du code donné par gloubi renvoie cette chaine :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    -  - 41 - 42 - 43 -  -  - 21 - 1 - 3 - 4
    mais je voudrais bien récupérer plutôt ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    41 - 42 - 43 - 21 - 1 - 3 - 4
    En effet, je voudrais pouvoir comparer chaque nombre de cette chaine avec un autre nombre (afin de savoir si ce dernier nombre est bien dans cette chaine)

Discussions similaires

  1. [XL-2007] USF récupérer dans une valeur en fonction d'un choix dans une liste (Combobox)
    Par mouftie dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 01/07/2015, 15h48
  2. récupérer une valeur de la base de données dans une liste
    Par Marie_7 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 30/06/2015, 18h46
  3. Réponses: 2
    Dernier message: 04/04/2012, 19h16
  4. Réponses: 6
    Dernier message: 03/12/2009, 12h24
  5. [Tableaux] récupérer une valeur de l'url
    Par vasilov dans le forum Langage
    Réponses: 2
    Dernier message: 20/01/2006, 18h49

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