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] Variables de variables et tableaux


Sujet :

Langage PHP

  1. #1
    Membre actif Avatar de leodi
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2004
    Messages : 172
    Points : 224
    Points
    224
    Par défaut [Tableaux] Variables de variables et tableaux
    Bonjour, j'ai un code comme celui là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $a_b_c[2][2] = "10";
     
    	$array1 = '[2]';
    	$array2 = '[2]';
    	$b = "b";
     
    	echo ${'a_'.$b.'_c'.$array1.$array2};
            echo $a_b_c[2][2];
    Le premier echo fonctionne, mais pas le second :

    Notice: Undefined variable: a_b_c[2][2] in xxx on line xxx
    Si vous pouriez me venir en aide

    PS : quand j'enlève [2][2] et $array1.array2 ca fonctionne...

  2. #2
    Membre averti Avatar de hisy
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 377
    Points : 353
    Points
    353
    Par défaut
    Bonjour
    Pour moi ta première et ta dernière ligne n'ont rien a voir avec ce qui est entre ...

    As tu mis tout le code ?

    Peux tu nous mettre un print_r($a_b_c);

    Merci ...

  3. #3
    Membre actif
    Inscrit en
    Septembre 2005
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 185
    Points : 220
    Points
    220
    Par défaut
    slt, ta variable 10 est de type numeric .alors commence par enleve les doubles cotes

  4. #4
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Tu n'y arriveras pas comme cela.

    Avec echo ${ 'a_' . $clan_attaquante . 'c' }[2][2] ; à la limite...

  5. #5
    Membre actif Avatar de leodi
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2004
    Messages : 172
    Points : 224
    Points
    224
    Par défaut
    Edit : oulà, oui, donc ce nest pas "clan_attaquante" mais b qu'il faut mettre, désolé faute lors du recopiage pour le forum, devais pas être reveillé, donc :s j'édite mon premier post.

    Bon, donc comme je n'ai pas voulu vous remetre tous le tableau, j'ai juste redéfini la variable avec une valeur de10.


    Tu n'y arriveras pas comme cela.

    Avec echo ${ 'a_' . $b . 'c' }[2][2] ; à la limite... Confused
    Mais ce que je veux c'est pouvoir faire [2][2] en variable, d'où "array1" et "array2".

    Le truc qui me chiffonne, c'est que lorsque j'enlève les [2][2] pour toutes les variables, celà fonctionne.

    En fait j'ai plusieurs tableau, que l'on va nommer :
    (tient au fait où j'avais oublié un "_" pour l'exemple "c" ci dessus (_c)
    $a_equipe1_c, $a_equipe2_c , et dans ces 2 tableaus, sont encore inclus des tableaux, sauf que moi j'aimerais, en fonction du contenus de "$clan_attaquante" selectionner le tableau numéro 1 ou 2.

    Note : ces 2 echos sortent exactement la même chose

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo ${'a_'.$b'_c'.$array1.$array2};
    echo $a_b_c[2][2];
    Alors que le premier m'affiche une erreur, le second m'affiche "10".

    Voilà, si vous ne m'avez pas compris, au moins j'aurais fait mon possible
    Et merci à vous pour votre aide.

  6. #6
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Ben remplaces les $array1 et $array2 par 2 au lieu de [2] puis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ${ 'a_' . $b . 'c' }[$array1][$array2] ;

  7. #7
    Membre éclairé Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Points : 846
    Points
    846
    Par défaut
    Essaie sa:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $array1 = 2;
    $array2 = 2;
    echo ${ 'a_' . $b . '_c'}[$array1][$array2.];
    EDIT: La solution vient d'être donné par macbook. zut trop tard lol

  8. #8
    Membre actif Avatar de leodi
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2004
    Messages : 172
    Points : 224
    Points
    224
    Par défaut
    Ca fonctionne
    Je vous remerci tous les 4

  9. #9
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    Dans ton premier message, il y a une autre coquille qui m'a induit en erreur au départ : c'est le second echo qui fonctionne, à l'inverse de ce que tu dis.

    En fait, les offsets ne font pas partie du nom de la variable, c'est pour cela que tu as ce message. PHP cherche une variable dont le nom (à distinguer de nom+offset) comporte "[2][2]" mais il n'en trouve pas car il est impossible d'appeler une variable de cette manière.

  10. #10
    Membre actif Avatar de leodi
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2004
    Messages : 172
    Points : 224
    Points
    224
    Par défaut
    Ah daccord, je comprends mon erreur, merci pour ce détail Kirkis !

    Sinon ba oui forcement, jamais 2 sans 3, c'était bien le premier echo qui ne fonctionnais pas... promis j'arrête de coder après minuit ^^

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

Discussions similaires

  1. [Tableaux] passage de variable formulaire
    Par Stef.web dans le forum Langage
    Réponses: 4
    Dernier message: 23/01/2006, 10h44
  2. [Tableaux] récuperer une variable tableau passé par URL
    Par molesqualeux dans le forum Langage
    Réponses: 2
    Dernier message: 23/12/2005, 01h12
  3. [Tableaux] tableau et variable
    Par tyarak dans le forum Langage
    Réponses: 5
    Dernier message: 18/12/2005, 23h55
  4. [Tableaux] Appeler une variable que si non NULL
    Par GarGamel55 dans le forum Langage
    Réponses: 6
    Dernier message: 08/10/2005, 14h07
  5. Réponses: 4
    Dernier message: 05/10/2005, 18h19

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