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] Soucis avec foreach


Sujet :

Langage PHP

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    490
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 490
    Points : 201
    Points
    201
    Par défaut [Tableaux] Soucis avec foreach
    re bonjour,

    me revoilà avec une fonction...
    je veux que ma fonction transforme une valeur de mon tableau....

    si je fais ceci ça ne marche pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    foreach ($tabNom as $val)
     {
       $val = str_replace(",","**",$val);
     }
    Par contre, avec un for ça fonctionne !!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for ($i=0;$i<sizeof($tabNom);$i++)
       {
         $tabNom[$i] =  str_replace(',',' ',$tabNom[$i]); 
       }

    alors là je n'y comprends rien du tout...

    vous voyez pourquoi vous ?

  2. #2
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    c'est logique en fait!
    ce que tu fais dans ton foreach c'estmodifié la variable "$val" qui est une "copie" du contenu du tableau à cette boucle la.
    Il faudrait faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    foreach ($tabNom as $cle => $val)
     {
       $tabNom[$cle] = str_replace(",","**",$val);
     }
    pour modifier le vrai contenu du tableau

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    490
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 490
    Points : 201
    Points
    201
    Par défaut
    Merci,

    donc en fait tab[cle] c'est la meme chose que $val... mais $val c'est une copie ???

  4. #4
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    oui !

    ca te permet de récupérer facilement les valeurs du tableau sans vouloir les modifier justement le foreach. Mais tu peux tjs les modifier en faisant ce que j'ai fait aussi !

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    490
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 490
    Points : 201
    Points
    201
    Par défaut
    okay !!
    merci

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

Discussions similaires

  1. [Tableaux] souci avec array_push sous firefox
    Par gregetso dans le forum Langage
    Réponses: 4
    Dernier message: 02/02/2009, 15h16
  2. [Tableaux] soucis avec $_get[' '];
    Par maysa dans le forum Langage
    Réponses: 12
    Dernier message: 27/10/2006, 14h40
  3. [Tableaux] Soucis avec array_map
    Par dunbar dans le forum Langage
    Réponses: 18
    Dernier message: 02/09/2006, 09h23
  4. [Tableaux] Souci avec array_push()
    Par renaud26 dans le forum Langage
    Réponses: 1
    Dernier message: 28/07/2006, 15h00
  5. [Tableaux] souci avec des simples quotes
    Par Jean Fi dans le forum Langage
    Réponses: 6
    Dernier message: 29/03/2006, 21h13

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