Estoy tratando de insertar la etiqueta <br/> después de la segunda palabra de una cadena dada, pero recorta algunas palabras de mi cadena, ¿alguien puede ayudarme a corregir el código en esto?
$pos = 1; $string = 'Lorem Imsem Dollar Country'; $words = explode(" ", $string); $new_array = array_slice($words, 0, $pos, true) + array($pos => '<br/>') + array_slice($words, $pos, count($words) - 1, true) ; $new_string = join(" ",$new_array); echo $new_string;Puedes usar array_splice :
$pos = 1; $string = 'Lorem Imsem Dollar Country'; $words = explode(" ", $string); array_splice( $words, $pos, 0, '<br>' ); $new_string = join(" ",$words); echo $new_string;Con $pos puede seleccionar la posición de la etiqueta <br/> .
Use $pos = 2 para agregar la etiqueta después de la segunda posición
$pos = 2; $string = 'Lorem Imsem Dollar Country'; $words = explode(" ", $string); array_splice( $words, $pos, 0, '<br>' ); $new_string = join(" ",$words); echo $new_string;Con preg_replace:
$new = preg_replace("/^(([^ ]+ ){2})/",'$1<br/>', $string);