|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : str_replace tableau [ Archives / AU SECOURS !!! ] (nashoy)
Informations & options pour cette discussion
vendredi 10 février 2006 à 02:11:43 |
str_replace tableau

nashoy
|
Bonsoir,
J'aimerai remplacer des caractère donnés dans un tableau à "key" comme on dit...:
function Conversion ($chaine) {
$conversion = array(
':)' => '*souris*',
':(' => '*triste*',
':|' => '*neutre*
);
foreach($conversion as $code => $valeur)
{
$chaine_finie .= str_replace($code,$valeur,$chaine);
}
echo $chaine_finie;
}
Voilà donc je pense que c'est assez clair.
Sachant que ce code me renvoie ceci, quand $chaine vaut ":):(:|" : *souris*:(:|:)*triste*:|:):(*neutre*.
Merci pour votre aide.
nashoy
|
|
|
vendredi 10 février 2006 à 07:54:16 |
Re : str_replace tableau

malik7934
|
Hello,
Tu as fait ce que j'appelle une faute qui bouffe la vie car on la voit pas
Ce n'est pas str_replace($code,$valeur,$chaine) mais str_replace($code,$chaine,$valeur);
De plus, attention à ton array, il est mal fermé: ':|' => '*neutre* -> ':|' => '*neutre*'
***** THINK -> SEEK -> ASK
|
|
|
vendredi 10 février 2006 à 08:01:06 |
Re : str_replace tableau

malalam
|
hello,
bah évidemment, que veux tu que cela te renvoie...?
Vire ta fonction inutile, déjà. Vire le foreach, et fais juste : $aNeedle = array (':)', ':(', ':|'); $aTrans = array ('*souris*', '*triste*', '*neutre*'); $chaine = str_replace ($aNeedle, $aTrans, $chaine);
|
|
|
vendredi 10 février 2006 à 08:03:10 |
Re : str_replace tableau

malalam
|
Malik, tu es mal réveillé ;-)
|
|
|
vendredi 10 février 2006 à 08:07:21 |
Re : str_replace tableau

malik7934
|
Hein quoi comment ou qui ça??!!!
euh, scouzi, mais en faisant:
$conversion = array(':)' => '*souris*',':(' => '*triste*',':|' => '*neutre*');
$chaine = ":):(:|";
foreach($conversion as $code => $valeur)
{
$chaine2 .= str_replace($code,$chaine,$valeur);
$chaine2 .= '<br />';
}
echo $chaine2;
-> *souris*
*triste*
*neutre*
So, je pige pas la remarque (peut-être que je suis VRAIMENT mal réveillé !!!  ) ***** THINK -> SEEK -> ASK
|
|
|
vendredi 10 février 2006 à 08:13:43 |
Re : str_replace tableau

malalam
|
Il veut, dans $chaine, trouver les clefs de son tableau présentes dans $chaine, et les remplacer par les valeurs de son tableau. Si j'ai bien pigé.
Donc mixed str_replace ( mixed search, mixed replace, mixed subject [, int &count] )
mixed search, ce sont les clefs de son tableau mixed replace, ce sont les valeurs de son tableau mixed subject, c'est sa chaine.
Et pas besoin de foreach, str_replace prend des tableaux en paramètres. Sinon, là, il boucle trop et obtient forcément n'importe quoi.
Ou alors, c'est moi qui suis vraiment très mal réveillé ;-)
|
|
|
vendredi 10 février 2006 à 08:16:43 |
Re : str_replace tableau

malik7934
|
ouais, bon, je vais pas réfléchir plus, j'ai les yeux tout collés de toute façon là :)
Je rajouterais qu'effectivement la boucle est inutile. Voili voilà, bonne nuit  ***** THINK -> SEEK -> ASK
|
|
|
vendredi 10 février 2006 à 12:01:41 |
Re : str_replace tableau

nashoy
|
Bonjour,
en fait je connais déjà la variante des 2 tableaux comme tu l'as dit
malalam, mais je préfèrerais le faire avec un tableau comme j'ai dit,
je trouve ça plus clair:
$conversion = array(
':)' => '*souris*',
':(' => '*triste*',
':|' => '*neutre*'
);
On peut facilement en rajouter en restant clair.
malik7934, ce que tu m'as donné affiche tout le contenu du tableau, or
j'aimerai seulement remplacer le code dans une chaine, par ex:
$chaine = "bonjour:)";
$chaine_fini vaut alors : "bonjour*souris*"
Si il le faut, j'adopterai la méthode des 2 tableaux, mais je préfèrerai de loin l'autre.
Merci beaucoup pour votre aide. nashoy
|
|
|
vendredi 10 février 2006 à 12:02:50 |
Re : str_replace tableau

Anthomicro
|
Salut, $rechercher=array('machin','truc','bidule'); $remplacer=array('truc','bidule','chouette'); $chaine='truc machin bidule'; echo $chaine=str_replace($rechercher,$remplacer,$chaine); ça va t'afficher bidule truc chouettea +
|
|
|
vendredi 10 février 2006 à 17:24:47 |
Re : str_replace tableau

nashoy
|
Salut Anthomicro,
dans mon message précédent, je disais que je cherche (si possible) une
autre méthode, car je trouve que celle des 2 tableaux n'est pas très
propre à mon gout (quand la liste devient plus longue).
Merci quand même. nashoy
|
|
|
Cette discussion est classé dans : chaine, tableau, conversion, replace, str
Répondre à ce message
Sujets en rapport avec ce message
Probleme de caracteres [ par LaurentKOogar ]
Bonjour,Je lis un Flux XML et dans la recuperation des datas j'ai des caracteres qui pour moi sont totalement inconnu: é => é ç => çDon
Émoticons BBcode [ par kegi ]
Bonjour,je désire formater une chaine pour remplacer [1],[2],[3]...[170] par des images .ex:$chaine = "Bonjour [25] !";=> $chaine = "Bonjour <img bord
Acronymes dynamiques [ par crocxx2 ]
Bonjours, je cherche à développer un systeme qui me permetré de géré les acronymes dynamiquement pour mon site, jusque la j'ai fait sa: function Re
Fonctionnement de array_push() ?? [ par eplanet ]
Bonsoir à tous, je me retrouve face à un problème qui me perturbe un peu. J'ai un tableau de tableaux auquel je veux ajouter des éléments, voici mon c
tableau qui est vide ou qui ne veut pas se créer [ par kifouillou ]
Bonjour à tous,j'ai déjà posé le problème, mais comme je n'avance pas je me permets de relancer. J'ai 2 pages, une avec un formulaire avec des cases à
Comparaison d'une variable avec celle d'un tableau [ par sebvcx ]
Bonjour,J'ai un petit souci, je ne comprends pas pourquoi la comparaison ne se fait pas il me renvoie faux alors que $str=Lesly et $_Get['eleve']=Lesl
str_replace("'", """, $maChaine); [ par alonsyl ]
bonjour, j'utilise 1 chaine de caractere pour generer du code HTML via PHP. j'ai donc des trucs du genre :$maChaine = "TEST";echo $maChaine;le
replace [ par kelm_by ]
Salut tous les mondes, Je ne sais pas ou est l'erreur dans ce code mais ce que je veux c'est enlever .Php et remplacer _ par un espace merci d'avenc
Texte propre pour une url ? [ par porciner ]
Bonjour,J'ai fais une fonction qui permet de dénuer une chaine de ses caractères spéciaux et autres caractères nuisibles lorsque l'on veut ajouter cet
transformer un tableau multidimensionnel en chaine de caracteres [ par franco_se ]
bonjour a tous.voila, je cherche a enregistrer un tableau multidimensionnel dans un champ de ma table sql .le probleme est que, lorsque je fais "inser
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version

HTC Magic
Entre 429€ et 429€
|