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] Faire un remplacement dans une chaîne


Sujet :

Langage PHP

  1. #1
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut [Tableaux] Faire un remplacement dans une chaîne
    Bonjour.

    je cherche en réalité à retirer les
    Array
    (
    et
    )
    que l'on trouve dans une chaine renvoyée par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $reponse = mysql_query("SELECT * FROM inscrits_newsletter", $link) or die ('Erreur : '.mysql_error() ); // récupération des données test
    while ($donnees = mysql_fetch_assoc($reponse))
    {
    	echo '<pre>';
    	print_r($donnees);
    	echo '</pre>';
    }
    ce qui donne quelque-chose de la forme:
    Array
    (
    [collone1] => valeurcollone1
    [collone2] => ...
    .
    .
    .

    )
    Array
    (
    ...
    ...
    )
    .
    .
    .
    j'ai essayé de suprimer les array avec un ereg_replace, mais ça ne marche pas (d'autemps plus que je n'arrive pas à lui donner le changement de ligne...)

    D'autre part, je ne voit pas comment caractériser la dernière parenthèse (même avec les expressions régulières...

    si vous avez une idée...

    merci
    Méphistophélès
    Si la solution ne résout pas votre problème, changez le problème...
    Cours et tutoriels C++ - FAQ C++ - Forum C++.

  2. #2
    Membre expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Points : 3 145
    Points
    3 145
    Par défaut

    print_r renvoit un booléen, pas une string.
    Je dirais donc tu n'a plus qu'à passer par une petite boucle for pour faire ce que tu veux

  3. #3
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut
    Tu peux récuperer le résultat de print_r dans une chaine, en faisant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $ma_valeur = print_r($donnee, true);
    Par contre, te recoder un ptit print_r avec une chtite fonction récursive et un foreach, j'pense que ca reste le meilleur moyen de maitriser le retour que tu veux.

    --
    Rakken
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

  4. #4
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut
    Merci.

    en effet, un for eache est beaucoup plus aproprié, mais à vrai dire, c'étais surtout le fait de ne pas réussir à traiter la chose qui m'énervait.

    bon, je vais peut-être aussi pouvoir faire des choses utiles...

    encore merci.
    Méphistophélès
    Si la solution ne résout pas votre problème, changez le problème...
    Cours et tutoriels C++ - FAQ C++ - Forum C++.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    297
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 297
    Points : 303
    Points
    303
    Par défaut
    var_export
    je ne sais pas si c'est plus simple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $myArray = array
    (
      'le premier' => 'valeur',
      'un autre' => array('mon', 'test'),
    );
     
    $explodeArray = explode('\n', var_export($myArray));
     
    for ($i = 1; $i < count($explodeArray)-1; $i++)
      echo ."<br />\n";
    ou alors:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $myArray = array
    (
      'le premier' => 'valeur',
      'un autre' => array('mon', 'test'),
    );
     
    echo var_export($myArray, true);

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

Discussions similaires

  1. [PHP 5.0] Occurences multiples à remplacer dans une chaîne
    Par oneTime dans le forum Langage
    Réponses: 5
    Dernier message: 14/04/2009, 00h36
  2. Comment faire un "remplacer" dans une colonne d'une table ?
    Par arnaudperfect dans le forum Requêtes
    Réponses: 7
    Dernier message: 22/02/2008, 12h32
  3. Réponses: 4
    Dernier message: 04/11/2006, 20h36
  4. [Tableaux] Extraire les chiffres dans une chaîne
    Par Digiduck dans le forum Langage
    Réponses: 8
    Dernier message: 16/08/2006, 14h33
  5. [MySQL] Remplacer dans une chaîne des motifs spéciaux : \' et \"
    Par BARBIER dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 25/11/2005, 17h39

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