Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/03/2012, 17:19
Mutis99
 
Fecha de Ingreso: abril-2010
Mensajes: 12
Antigüedad: 14 años
Puntos: 0
Bucle de reemplazos con substr_replace

Intento reemplazar en una cadena de texto una serie de expresiones, en este caso "sin embargo", por unos sinónimos utilizando substr_replace; como no quiero que se repita el mismo sinónimo en la cadena, no uso str_replace. Conozco la posición, la longitud de la expresión y de la cadena, incluso el número de apariciones en el texto.
Pero no hay manera, lo he intentado con este bucle:
Código:
	for ($num=0; $num<$apariciones_conector; $num++){
	$rand_sinonimo = mt_rand(1, count($array_conectores)-1);
	$reemplazo=$array_conectores[$rand_sinonimo];//REEMPLAZO ALEATORIO
	$texto2=$texto;

	$longitudconector=strlen($conector_buscado);

	$textofinal[$num]= substr_replace ($texto2, $reemplazo,$array_posiciones[$num],$longitudconector);

		}
La cadena de texto:
Código:
$texto='te lo digo sin embargo yo estoy aquí sin embargo yo te lo digo veces sin embargo mas je je je';
Y lo más que obtengo es un array donde se reemplaza una vez solamente en una posicion dada en cada elemento del array.

Cita:

Array ( [0] => te lo digo por otro lado yo estoy aquí sin embargo yo te lo digo veces sin embargo mas je je je [1] => te lo digo sin embargo yo estoy aquí además yo te lo digo veces sin embargo mas je je je [2] => te lo digo sin embargo yo estoy aquí sin embargo yo te lo digo veces asimismo mas je je je )
Mi objetivo es conseguir una única cadena con todos los reemplazos, sin que tenga por qué que repetirse el mismo sinónimo.
Estoy estancado, os agradecería muchísimo un poco de ayuda.