1. #1
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    juillet 2004
    Messages
    531
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : juillet 2004
    Messages : 531
    Points : 185
    Points
    185

    Par défaut variable str_replace multiple

    Bonjour à tous,
    petit question, est il possible de remplacer dans un variable plusieurs caractères en même temps
    variable style :
    [[2008],[2009],[2010],[2011],[2012],[2013],[2014],[2015],[2016],[2017],[2018]]
    à remplacer pour un résultat
    "2008","2009","2010","2011","2012","2013","2014","2015","2016","2017","2018"

    je sais qu'avec str_replace on peut remplacer un caractère par un autre mais plusieurs, est ce possible sans faire de str_replace multiple ?

    Merci d'avance de votre aide

    Cdt

  2. #2
    Membre chevronné Avatar de CosmoKnacki
    Homme Profil pro
    Inscrit en
    mars 2009
    Messages
    1 135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mars 2009
    Messages : 1 135
    Points : 2 123
    Points
    2 123

    Par défaut

    Tu cherches peut-être la fonction strtr?
    "Ça s'laisse boire!" - Bérénice du Syphon

  3. #3
    Rédacteur/Modérateur
    Avatar de jreaux62
    Homme Profil pro
    Webdesigner
    Inscrit en
    août 2008
    Messages
    11 762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Arts - Culture

    Informations forums :
    Inscription : août 2008
    Messages : 11 762
    Points : 23 748
    Points
    23 748

    Par défaut

    bonjour,
    Citation Envoyé par spawns Voir le message
    ...je sais qu'avec str_replace...
    Tu crois savoir...
    Il suffit de lire la doc. : str_replace() prend aussi des tableaux (array) en paramètres.
    "Si tu suis le chemin qui s'appelle « plus tard », tu arriveras à la place qui s'appelle « jamais »."
    François Camille Prévot (1910-1996), instituteur puis Directeur d'école et... mon grand-père.
    "Pose ta question, tu seras idiot une seconde. Ne la pose pas, tu seras idiot toute ta vie."
    Albert Einstein (1879-1955).
    Mes tutos DVP
    Gestion-Affichage de Nouvelles
    Affichage en tableau HTML
    Fonctions de redimensionnement d'images

  4. #4
    Modérateur
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    mars 2004
    Messages
    4 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : mars 2004
    Messages : 4 559
    Points : 11 297
    Points
    11 297
    Billets dans le blog
    5

    Par défaut

    Salut,

    attention avec str_replace(), l'ordre des valeurs recherchées est pris en compte... Faut pas te louper si tu veux arriver au résultat escompté.
    # Dans la Création, tout est permis mais tout n'est pas utile...

  5. #5
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    juillet 2004
    Messages
    531
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : juillet 2004
    Messages : 531
    Points : 185
    Points
    185

    Par défaut

    Effectivement j'avais pas vu que la fonction prenait les tableaux
    donc c'est nickel

    Merci pour l'info

  6. #6
    Membre expérimenté Avatar de darkstar123456
    Profil pro
    Inscrit en
    mars 2008
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations forums :
    Inscription : mars 2008
    Messages : 1 286
    Points : 1 571
    Points
    1 571

    Par défaut

    Hello,

    J'aimerais ajouter que vu ce que tu essayes de faire, il serait probablement plus simple de faire un preg_replace() plutôt qu'un str_replace()

    Tu pourrais faire quelque chose du genre :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $content = preg_replace('#\[([0-9]{4})\]#', '$1', $content);

    J'aimerais également ajouter un bout de code pour gérer facilement ses str_replace().
    Comme dit dans un commentaire précédent, il est important de respecter l'ordre de ses replacements, il est donc parfois difficile de maintenir son code efficacement.
    Je pense notamment à des codes pour remplacer les smileys par des images, et dont l'array est forcément conséquent.
    J'ai donc une solution : construire un array avec clé et valeur, et ensuite utiliser array_keys() afin de fournir l'array adéquat dans le premier paramètres de la fonction. Dans les 2 premiers paramètres, seules les valeurs sont utilisées, voilà pourquoi on a pas besoin de faire un array_values() pour le second paramètres.
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $replacements = array(
         "mon_replace_1" => "ici je mets quelque chose",
         "mon_replace_2" => "ici je mets autre chose",
    );
    $content = str_replace(array_keys($replacements), $replacements, $content);
    N'hésitez pas à me contacter !

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

Discussions similaires

  1. Dichotomisation de variable à réponses multiples
    Par AlexFred dans le forum Macro
    Réponses: 2
    Dernier message: 21/10/2014, 10h01
  2. [CR XI] Commande SQL et variable à valeurs multiples
    Par tatayoyo dans le forum SAP Crystal Reports
    Réponses: 5
    Dernier message: 05/03/2012, 11h11
  3. [SQL2K5] Astuce pour utiliser une variable à valeur multiple
    Par Jinroh77 dans le forum Développement
    Réponses: 0
    Dernier message: 28/05/2008, 14h27
  4. bouton radio a variables multiples
    Par edenyorke dans le forum Formulaires
    Réponses: 9
    Dernier message: 04/05/2006, 02h01
  5. [EJBQL] Multiple Variable et ClassCastException
    Par alfsalim dans le forum Java EE
    Réponses: 4
    Dernier message: 23/12/2005, 16h40

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