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:
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:
$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.
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.