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 :

Inverser les valeurs d'un tableau à 2 dimensions


Sujet :

Langage PHP

  1. #1
    Membre expérimenté
    Avatar de Jarodd
    Profil pro
    Inscrit en
    Août 2005
    Messages
    851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 851
    Points : 1 717
    Points
    1 717
    Par défaut Inverser les valeurs d'un tableau à 2 dimensions
    Bonjour,

    Je cherche à inverser les valeurs d'un tableau à 2 dimensions :

    $Data[0][1] ==> $Data[1][0]
    $Data[0][2] ==> $Data[2][0]
    $Data[4][8] ==> $Data[8][4]
    etc

    J'ai cherché du côté de array_reverse et array_flip(). J'ai aussi essayé avec une boucle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for( $i = 0; $i < count($Values[0]); $i++ ) {
    	for( $j = 0; $j < count($Values[0]) ; $j++ ) {
    		//echo '<p>i = '.$i.', j = '.$j.', data = ' .$Values[$i][$j] . '</p>';
    		$ValuesTemp[$j][$i] = $Values[$i][$j];
    		//echo "<p>$j + $i = ".$ValuesTemp[$j][$i] . "</p>";
    	}
    }
    Je n'arrive pas à le faire avec les deux fonctions de la FAQ qui ne montrent que des exemples avec des tableaux à 1 dimension. Pour la boucle, cela pose problème pour certaines valeurs déjà traitées :

    Par exemple quand on traite $Data[1][0], elle a auparavant pris la valeur de $Data[0][1] et a perdu sa valeur initiale, ici je ne sais pas comment faire pour conserver ces valeurs déjà traitées ?

    Merci d'avance pour votre aide.

  2. #2
    Membre confirmé 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
    Points : 531
    Points
    531
    Par défaut
    Bonjour,

    Comme ca ?
    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
     
    <?php
    $data = array();
    $data[0][1] = 'A';
    $data[0][2] = 'B';
    $data[4][8] = 'C';
     
    echo "<h1>Tableau d'origine</h1>";
    echo "<pre>";
    print_r($data);
    echo "</pre>";
     
     
    function inverse_array($tableau) {
    	$return_array = array();
     
    	foreach($tableau as $cle1 => $arr_elem) {
    		foreach($arr_elem as $cle2 => $elem)
    			$return_array[$cle2][$cle1] = $elem;
    	}	
     
    	return $return_array;
    }
     
    echo "<h1>Tableau inversé</h1>";
    echo "<pre>";
    print_r(inverse_array($data));
    echo "</pre>";
    ?>
    Gillou

  3. #3
    Membre expérimenté
    Avatar de Jarodd
    Profil pro
    Inscrit en
    Août 2005
    Messages
    851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 851
    Points : 1 717
    Points
    1 717
    Par défaut
    Super c'est exactement ça ! Je n'aurai jamais pu le trouver... Merci LeGilou !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/09/2008, 13h41
  2. inverser les clés et les valeurs d'un tableau
    Par Jasmine80 dans le forum Langage
    Réponses: 1
    Dernier message: 18/06/2008, 10h54
  3. "inverser" les valeurs d'un tableau
    Par Clad3 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 12/12/2005, 12h13
  4. comparer les valeurs d'un tableau
    Par nicerico dans le forum ASP
    Réponses: 4
    Dernier message: 19/08/2004, 11h20
  5. Compter les valeurs d'un tableau
    Par leeloo076 dans le forum ASP
    Réponses: 6
    Dernier message: 30/03/2004, 13h29

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