Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/05/2005, 12:03
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
La llamada a una función no se hace con "function" delante .. eso sólo se usa para definir tu función .. Además la función sólo "procesa" .. devuelve un resultado que tendras que usar un "echo" si quieres verlo .... (tal vez sea un problema al transcribir tus ejemplos en el foro .. ??)

Código PHP:
function cortar_frase($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.. 

  
return $frase_salida


echo 
cortar_frase(strip_tags($row['text']),10); 
Ahora .. puede ser que tengas a su vez problemas con el uso de strip_tags() .. si te fijas en la documentación oficial de dicha función .. dicen que no quita algunas cosas como saltos de liena y códigos similares /n y afines .. Puede ser que todo eso afecte a: str_word_count($frase_corta,1) que cuenta "palabras" .. tal vez se confunda ahí.

Revisa los comentarios de los usuarios de dicha función y prueba sus ejemplos
http://www.php.net/manual/en/function.strip-tags.php

Tambien revisa:
str_replace() para quitar los \n ó \r ó \n\r que pudieran quedar por ahí ...
www.php.net/str_replace

Un saludo,