Ver Mensaje Individual
  #3 (permalink)  
Antiguo 25/08/2013, 16:50
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: str_replace cadena exacta PROBLEMA TONTO....

Pues obviamente tienes un error de lógica en esa función... Como mínimo, debería contener un case o switch, que evaluara las condiciones por separado, con su correspondiente break.
Código PHP:
Ver original
  1. switch ($a) {
  2.     case "ES":
  3.         $a=str_replace("ES","ESPAÑA",$a);
  4.         break;
  5.     case "P":
  6.         $a=str_replace('P','PORTUGAL',$a);
  7.         break;
  8.     case "TU":
  9.         $a=str_replace('TU','TUNEZ',$a);
  10.         break;
  11. }
¿Notas que cada una de esas sentencias se ejecuta en cadena, y que la segunda tiene como entrada del str_replace(), lo que ya hizo el primero, y el tercero el resultado de la segunda...?
Creo que con lo que te digo tal vez te des cuenta de por dónde está tu error...

Aunque yo lo haría:
Código PHP:
Ver original
  1. switch ($a) {
  2.     case "ES":
  3.         $a = "ESPAÑA";
  4.         break;
  5.     case "P":
  6.         $a = "PORTUGAL";
  7.         break;
  8.     case "TU":
  9.         $a = "TUNEZ";
  10.         break;
  11. }
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)