Probleme avec str_replace - PHP - Programmation
Marsh Posté le 08-10-2003 à 01:00:06
Ben c'est simple :
$sch vaut array et non une valeur particulière.
Pour récupérer une valeur dans un tableau, on utilise $sch[0] pour la première valeur, puis 1 etc...
Donc dans ton cas, il faut faire 2 str_replace.
Sinon t'as les expreg, mais c'est plus lent à l'exécution et dans ton cas, c'est inutile je trouve.
Marsh Posté le 08-10-2003 à 01:01:13
Ah oui, un dernier truc :
je trouve également plus propre de faire :
$bodytag = str_replace("$sch", "$rempl", "$nux" );
puis ensuite echo $bodytag;
Marsh Posté le 08-10-2003 à 10:30:28
je peux pas faire $sch[$i] et $i s'autoincremente a chaque boucle jusqu as ce qu il atteigne une valeur definie ??
je pense qui oui mais sait po si il a pas un moyen plus simple
et peux etre moins lourd
le but est de : remplacer dans un texte des signe et afficher des smilies ect...
@+
Marsh Posté le 08-10-2003 à 10:32:46
nunux2002 a écrit : je peux pas faire $sch[$i] et $i s'autoincremente a chaque boucle jusqu as ce qu il atteigne une valeur definie ?? |
bien sûr que si tu peux, mais dans le code que tu as montré, tu avait juste $sch et non $sch[$i].
Marsh Posté le 08-10-2003 à 10:43:51
tu as essayé ton premier code mais sans les quotes dans le str_replace() ?
j'utilise un code similaire qui fonctionne normalement (sauf que j'ai mis les tableaux directement dans le str_replace()
essayes aussi de faire
Code :
|
la syntaxe avec echo $var = qqcose est peut être pas evaluée correctement
Hermes > le str_replace avec des tableaux fonctionne bien comme ça pas besoin de $i[1] etc.. cf la doc
Marsh Posté le 08-10-2003 à 10:51:18
oui j'avais lu ca dans la doc mais ca ne fonctionne pas c pour ca que j'ai poster et on m'as dis que ca devais etre $var[$i] ou defini i pas 0,1,2,3,.... je vais tester en mettant dirrectement les tableau dans le str_replace.. oui en faisant echo str_replace je vous dis quoi
Marsh Posté le 08-10-2003 à 10:54:09
Sh@rdar a écrit : tu as essayé ton premier code mais sans les quotes dans le str_replace() ?
|
ah ouai ????
ben c'est cool alors. Moi je faisais bêtement une boucle.
Remarque ça doit pas changer grand chose parce que php doit lui aussi faire une boucle dans ce cas.
Marsh Posté le 08-10-2003 à 10:57:47
fonctionne pas
en mettant mes array dans le str_replace
enfin je ferais une boucle si ya po d'autre moyen
sur la doc g lus que c'etait pas possible de mettre des tableau dans le str_replace sur certaine version de php ??( si j'ai bien compris) je serais pas dans ce cas
Marsh Posté le 08-10-2003 à 11:02:27
nunux2002 a écrit : fonctionne pas |
montre ton code complet STP...
Marsh Posté le 08-10-2003 à 11:04:52
En PHP 4.0.5 et plus récent, tous les paramètres de str_replace() peuvent être des tableaux
pas sur d'avoir la 4.0.5
enfin je ferais une boucle a moins sh@rdar explique ...
Marsh Posté le 08-10-2003 à 11:13:30
j'utilise ça pour une bête suppression d'accents dans des noms de répertoires pour gérer des images
$val['Marque'] = str_replace(array('é','è','à','ù'),array('e','e','a','u'),$val['Marque']);
ça fonctionne très bien !
quelle est ta version de php ?? si elle est inférieur à la 4.0.5 ça va pas marcher tu l'as dit toi même
Marsh Posté le 08-10-2003 à 11:43:03
viend de faire un phph info et ma version est : PHP Version 4.2.0
donc c bon.. jpige plus rien
je regarder tt ca tt a l'heure quand je serais a la maison et plus au taff
Marsh Posté le 08-10-2003 à 11:45:44
colle ton code complet et fais ce que Hermes et moi t'avons demandé plus haut
echo str_replace($sch,$rempl,$nux);
et pas
echo $bodytag = str_replace("$sch", "$rempl", "$nux" );
Marsh Posté le 08-10-2003 à 12:01:57
Grand merci comme ca ca fonctionne
donc pas de "" et ca marche
Grand merci
Marsh Posté le 08-10-2003 à 00:14:01
Salut,
mon probleme est qu il ne me fais pas le remplacement avec str_replace g cree 2 tableau avec 2 trucs possible mais rien a faire..
voila mon code
si qq un voit qq chose qui pourrais m'aider
Merci @++
Message édité par nunux2002 le 08-10-2003 à 00:18:39