Gracias cluster, como es algo que tengo que llamar de varios lugares necesitaba colocarlo dentro de la funcion con lo cual me quedo asi lo probe y funciona, si ves algo raro por favor avisame
Código PHP:
<?
function resumen2($frase_entrada,$cortar){
if (strlen($frase_entrada) > $cortar){
$frase_corta=substr($frase_entrada,0,$cortar); // obtener la frase cortada.
$palabras=str_word_count($frase_corta,1); // obtener array con las palabras.
$total_palabras=count($palabras)-1; // contar total array elementos y restar 1 elementos
$palabras=array_splice($palabras,0,$total_palabras); // le quitamos la ultima palabra.
$frase_salida=implode(' ',$palabras); // y concatenamos con el espacio hacia una cadena.
$frase_salida .= "..."; // se añaden los puntos suspensivos a la cadena obtenida..
}else{
$frase_salida=$frase_entrada;
}
return $frase_salida;
}
$frase="Esto es una prueba de esta funcion.";
echo 'Frase original: '.$frase.'<br>';
echo 'Frase cortada: '.resumen2($frase,150)."<br>";
?>
Gracias