[PHP] grrrr c pas possible !

grrrr c pas possible ! [PHP] - PHP - Programmation

Marsh Posté le 23-09-2002 à 22:24:44    

Voila ya longtemps g lu un msg qui disait :
 
comment eviter de faire un truc moche et lent comme ca pour faire des eregi_replace
 

Code :
  1. $message = eregi_replace(":)", "<img src=\"laugh.gif\">", $message);
  2. $message = eregi_replace(":human:", "<img src=\"human.gif\" ALT=\"human\">", $message);
  3. $message = eregi_replace(":night elf:", "<img src=\"night elf.gif\" ALT=\"night elf\">", $message);
  4. $message = eregi_replace(":orc:", "<img src=\"orc.gif\" ALT=\"orc\">", $message);
  5. $message = eregi_replace(":undead:", "<img src=\"undead.gif\" ALT=\"undead\">", $message);
  6. $message = eregi_replace(":fuck:", "<img src=\"fuck.gif\">", $message);
  7. $message = eregi_replace(":war3rox:", "<img src=\"war3carox.gif\">", $message);
  8. $message = eregi_replace(":degueu:", "<img src=\"degueu.gif\">", $message);


 
et ben voila je vous demande, paske si je me souviens bien, parait que c lent et quil y a un autre moyen pour ne pas ecrire $message=.... $message=.... $message=.... $message=....
 
merci de repondre !

Reply

Marsh Posté le 23-09-2002 à 22:24:44   

Reply

Marsh Posté le 23-09-2002 à 22:27:59    

tableau

Reply

Marsh Posté le 23-09-2002 à 22:29:23    

heu jaime pas les tablo tu peux me montrer lexemple que je comprenne?

Reply

Marsh Posté le 23-09-2002 à 22:34:02    

$toto[0] = ";)";
$titi[0] = "laught.gif";
 
$toto[1] = ":human:";
$titi[1] = "human.gif";
 
...
 
 
$message = preg_replace($toto,"<img src=\"$titi\" alt=\"\" />",$message);

Reply

Marsh Posté le 24-09-2002 à 00:10:33    

le top c d utiliser une base de donnée  
 
 
on peux t aider pour ca ;)


Message édité par veryfree le 24-09-2002 à 00:11:35
Reply

Marsh Posté le 24-09-2002 à 11:41:18    

Ce qui est lent c que tu utilises des ereg_*() !!!!!!!!!!!!!!!!!!!!!
 
Il faut tjrs utiliser les preg_*(). D'ailleurs dans ton cas si tu remplaçais les eregi_replace() par str_replace() ça irait et c ce qui va le + vite.

Reply

Marsh Posté le 24-09-2002 à 11:46:59    

clair dans son cas un coup de str_replace et roxxor :o

Reply

Marsh Posté le 24-09-2002 à 11:48:31    

skylight a écrit a écrit :

$toto[0] = ";)";
$titi[0] = "laught.gif";
 
$toto[1] = ":human:";
$titi[1] = "human.gif";
 
...
 
 
$message = preg_replace($toto,"<img src=\"$titi\" alt=\"\" />",$message);
 




 
c'est un peu long d'assigner tout comme ca :D
c'est mieux de faire :
 
$toto = array (";)",":human:",.....)

Reply

Marsh Posté le 24-09-2002 à 11:50:26    

veryfree a écrit a écrit :

le top c d utiliser une base de donnée  




 
ouais comme ça t'es sûr que ce soit bien lent :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 24-09-2002 à 13:33:48    

antp a écrit a écrit :

 
 
ouais comme ça t'es sûr que ce soit bien lent :D



bof ba si lent que ca une bdd non plus, mais c'est sur que c'est pas optimal.
D'un autre coté c'est super modulable :D


---------------
Protèges carnets personnalisés & accessoires pour bébé
Reply

Marsh Posté le 24-09-2002 à 13:33:48   

Reply

Marsh Posté le 24-09-2002 à 18:02:48    

joce a écrit a écrit :

 
 
c'est un peu long d'assigner tout comme ca :D
c'est mieux de faire :
 
$toto = array (";)",":human:",.....)




 
ct pour le faire comprendre :o :p
 
si je voulais etre au top, je mettrais str_replace et l'assignation du tablo comme t'a dit :D
 
A+

Reply

Marsh Posté le 24-09-2002 à 19:35:58    

oh plein de reponses merci :)

Reply

Marsh Posté le 24-09-2002 à 19:42:18    

ca ferait un truc du genre si javais besoin que de ;) de human et de undead
 

Code :
  1. $toto = array (";)",":human:",":undead:" );
  2. $titi = array("<img src=\"laugh.gif\">","<img src=\"human.gif\">","<img src=\"undead.gif\">" );
  3. $message = str_replace($toto,"<img src=\"$titi\" alt=\"\" />",$message);


 
c bien ca ou c pas ca?

Reply

Marsh Posté le 24-09-2002 à 19:43:09    

orazur a écrit a écrit :

ca ferait un truc du genre si javais besoin que de ;) de human et de undead
 

Code :
  1. $toto = array (";)",":human:",":undead:" );
  2. $titi = array("laugh.gif","human.gif","undead.gif" );
  3. $message = str_replace($toto,"<img src=\"$titi\" alt=\"\" />",$message);


 
c bien ca ou c pas ca?
 



Reply

Marsh Posté le 24-09-2002 à 19:51:29    

ca marche pas il se passe rien ¿?

Reply

Marsh Posté le 24-09-2002 à 20:05:21    

c bon le bon code etait :

Code :
  1. $toto = array (":lol:",":human:",":undead:" ); 
  2. $titi = array("laugh.gif","human.gif","undead.gif" ); 
  3. for ($i=0; $i<count($toto); $i++)
  4. {
  5. $message = str_replace($toto[$i],"<img src=\"$titi[$i]\">", $message);
  6. }

Reply

Marsh Posté le 24-09-2002 à 20:06:39    

str_replace ne prends pas les tableaux ?  :heink:

Reply

Marsh Posté le 24-09-2002 à 20:16:21    

non

Reply

Marsh Posté le 24-09-2002 à 20:18:24    

orazur a écrit a écrit :

non



sisi
 
mixed str_replace ( mixed search, mixed replace, mixed subject)
 
(et accessoirement sinon le forum marcherait pas du tout :D)


Message édité par joce le 24-09-2002 à 20:19:21

---------------
Protèges carnets personnalisés & accessoires pour bébé
Reply

Marsh Posté le 24-09-2002 à 20:20:21    

mais le problème c'est que ca première variable est un tableau et la deuxième un truc hybride :D


---------------
Protèges carnets personnalisés & accessoires pour bébé
Reply

Marsh Posté le 24-09-2002 à 20:21:19    

Code :
  1. $toto = array (";)",":human:",":undead:" );
  2. $titi = array("<img src=\"laugh.gif\" alt=\"\" />","<img src=\"human.gif\" alt=\"\" />","<img src=\"undead.gif\" alt=\"\" />" );
  3. $message = str_replace($toto,$titi,$message);



---------------
Protèges carnets personnalisés & accessoires pour bébé
Reply

Marsh Posté le 25-09-2002 à 21:40:16    

joce a écrit a écrit :

Code :
  1. $toto = array (";)",":human:",":undead:" );
  2. $titi = array("<img src=\"laugh.gif\" alt=\"\" />","<img src=\"human.gif\" alt=\"\" />","<img src=\"undead.gif\" alt=\"\" />" );
  3. $message = str_replace($toto,$titi,$message);


 




 
Et comment limiter le nombre de smilies ?
 
Si on ne veut pas plus de 10 smilies par post par exemple ?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 26-09-2002 à 15:02:29    

interessant mais inutile  :benetton:

Reply

Marsh Posté le 26-09-2002 à 17:16:48    

Freekill a écrit a écrit :

 
 
Et comment limiter le nombre de smilies ?
 
Si on ne veut pas plus de 10 smilies par post par exemple ?



et bah on utilise preg_replace :)
 
avec en dernier argument, 10
 
 
ex
 

Code :
  1. $toto = array ("/;)/","/:human:/","/:undead:/" ); 
  2. $titi = array("<img src=\"laugh.gif\" alt=\"\" />","<img src=\"human.gif\" alt=\"\" />","<img src=\"undead.gif\" alt=\"\" />" ); 
  3. $message = preg_replace($toto,$titi,$message,10);


Message édité par skylight le 26-09-2002 à 17:17:38
Reply

Marsh Posté le 26-09-2002 à 22:29:34    

skylight a écrit a écrit :

et bah on utilise preg_replace :)
 
avec en dernier argument, 10
 




 
Ben oui ça je sais, mais joce dit que ce forum utilise str_replace, alors je me demande comment il a fait?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 26-09-2002 à 22:51:22    

Freekill a écrit a écrit :

 
 
Ben oui ça je sais, mais joce dit que ce forum utilise str_replace, alors je me demande comment il a fait?



pour les smilies, il utilise preg_replace, en tout cas :)
 
il a dit que str_replace était + rapide .. mais ne permet pas de limiter les occurences.

Reply

Marsh Posté le 27-09-2002 à 00:07:11    

Moui, il devait parler des balises de formatage texte et autres trucs non limités?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed