Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1852 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Tableaux plusieur dimension

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Tableaux plusieur dimension

n°688626
td-rat
www.corkteam.com
Posté le 31-03-2004 à 16:22:14  profilanswer
 


J ai un tableau qui contient un enregistrement:  
$val=$tab[key1][key2][key3];
echo $val; => j ai ma valeur.
 
Ce tableau n est pas de dimension fixe. Pour le parcourir, j utilise des foreach() avec une fonction recursive.
 
Tout va bien, je garde, l ensemble des keys dans un tableau que j incremente au fur et a mesure de mon parcour du tableau.
 
Maintenant ca se complique, je veux construire ma variable. Je doit la construire en texte car je suis ds une tableau a dimension variable donc je fais un for() sur les keys que j ai sauvegardé et je construit ma viaraible.
$val="$tableau[access][agir][session]"
 
Mais impossible de recupere le contenu:
echo $val; me renvoir Array[agir][session]
 
Donc j en conclu qu il interprete que la premiere partie de ma variable.
 
Comment le forcer a interpreter l'ensembel des [] et pas s'arreter au premier?
Existe t'il un appelle du tableau ne portant pas a confusion?  
 
Thx

mood
Publicité
Posté le 31-03-2004 à 16:22:14  profilanswer
 

n°688637
ratibus
Posté le 31-03-2004 à 16:31:59  profilanswer
 

$val="$tableau[access][agir][session]";
Je n'ai pas compris pourquoi tu devais faire une chaîne de caractères.
Sinon pour répondre à ta question ceci devrait marcher :
$val="${tableau['access']['agir']['session']}";

n°688646
td-rat
www.corkteam.com
Posté le 31-03-2004 à 16:38:34  profilanswer
 

En fait je fais des fonction recursive, donc ma memoire d'iteration, c est une chaine de caractere.
Donc a un moment donnée pendant le parcoure du tableau j'utilise cette memoire pour trouver ma valeur.
 
Ta syntaxe ne marche pas. c est koi comme ' ou `?

n°688653
ratibus
Posté le 31-03-2004 à 16:42:20  profilanswer
 

guillemets simples (un chaîne de caractères)
tu peux me montrer la ligne en question dans ton code ?

n°688654
naceroth
Posté le 31-03-2004 à 16:42:50  profilanswer
 

Non, la syntaxe de ratibus ne fonctionne pas j'y avais songé en lisant la question

n°688661
td-rat
www.corkteam.com
Posté le 31-03-2004 à 16:45:56  profilanswer
 

Ouai je confirme ca marche pas il me refuse les { .
Cela ne viens pas de guillemets, je les ai tous essayé.

n°688696
ratibus
Posté le 31-03-2004 à 17:07:54  profilanswer
 

Je lis la doc pourtant :p : http://www.php.net/manual/fr/language.types.string.php  exemple 6-15

n°688701
ratibus
Posté le 31-03-2004 à 17:09:37  profilanswer
 

TD-Rat a écrit :

Ouai je confirme ca marche pas il me refuse les { .
Cela ne viens pas de guillemets, je les ai tous essayé.


Ton code c'est exactement la ligne que tu nous as donnée ?
 
Si c'est le cas fais ça :
$val=$tableau['access']['agir']['session'];

n°688710
naceroth
Posté le 31-03-2004 à 17:14:35  profilanswer
 

Ah ouais, l'idée des {} était bonne mais mal employée :)
 
Faut mettre  

Code :
  1. $var = "{$tab['key1']['key2']['key3']}";

n°688729
td-rat
www.corkteam.com
Posté le 31-03-2004 à 17:36:32  profilanswer
 

Ok merci bien ,j essaierai tout ca demain car j ai deja quitter le boulot.
Je poste demain dés que j ai essayer, merci bcp

mood
Publicité
Posté le 31-03-2004 à 17:36:32  profilanswer
 

n°688734
td-rat
www.corkteam.com
Posté le 31-03-2004 à 17:40:08  profilanswer
 

ratibus a écrit :


Ton code c'est exactement la ligne que tu nous as donnée ?
 
Si c'est le cas fais ça :
$val="${tableau['access']['agir']['session']}";


 
Ouai ca fonctionne mais avec le $ a l interieur des acolades.


Message édité par td-rat le 31-03-2004 à 17:41:13
n°688746
ratibus
Posté le 31-03-2004 à 17:51:18  profilanswer
 

TD-Rat a écrit :


 
Ouai ca fonctionne mais avec le $ a l interieur des acolades.


Oui autant pour moi j'avais fait une faute de frappe, mea culpa  :whistle:


Message édité par ratibus le 31-03-2004 à 17:52:00
n°689128
td-rat
www.corkteam.com
Posté le 31-03-2004 à 23:10:25  profilanswer
 

No souci merci

n°689346
td-rat
www.corkteam.com
Posté le 01-04-2004 à 09:36:29  profilanswer
 

OK j'ai pu verifier au boulot que ca marche bien.
 
Par contre se pause a moi un probleme similaire
 
$val1="$tab";
$val1.="['access']['agir']['session']";
 
echo {$val1}; m affiche Array['access']['agir']['session']
De nouveau il interprete que la premiere partie.
 
Une idée ?


Message édité par td-rat le 01-04-2004 à 10:00:10
n°689378
ratibus
Posté le 01-04-2004 à 10:19:13  profilanswer
 

$val1="tab";  
$val1.="['access']['agir']['session']";  
 
echo ${$val1};

n°689381
td-rat
www.corkteam.com
Posté le 01-04-2004 à 10:26:02  profilanswer
 

Nop affiche que dalle

n°689448
ratibus
Posté le 01-04-2004 à 11:08:26  profilanswer
 

$val1="tab";  
$val1.="['access']['agir']['session']";
 
eval('echo $'.$val1.';');

n°689512
td-rat
www.corkteam.com
Posté le 01-04-2004 à 11:54:36  profilanswer
 

K tres bien c est nickel , ca marche.
 
Juste une derniere chose comme dirai Columbo.
 
pour mettre une valeur dans $val2 ?
$val2="tab['access']";    
$val2.="['TOTO']['taille']";
eval('$'.$val2.'=100;');  
Cette syntaxe ne marche pas. Comment faut il faire ?

n°689532
ratibus
Posté le 01-04-2004 à 12:04:26  profilanswer
 

Chez moi elle marche ta syntaxe [:spamafote]

n°689557
td-rat
www.corkteam.com
Posté le 01-04-2004 à 12:14:55  profilanswer
 

Ouai autant pour moi en faisant le copier coller j avais laisser le val1 dans mon eval.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Tableaux plusieur dimension

 

Sujets relatifs
[HTML/CSS] Tableaux stylésHelp : Probleme PHP : tableaux et variables!
tableaux dans dreamweaver[PHP] tri de tableaux imbriqués
les tableaux[JAVA] Interface : plusieur formulaires
Tableaux et bordureUitlisation de Tableaux en Shell
Les tableaus à plusieurs dimension en Perl.comment creer un tampon commun a plusieur classe en c++
Plus de sujets relatifs à : Tableaux plusieur dimension


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR