Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/11/2010, 13:01
Avatar de mayid
mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Información Problemas de version PHP 5.1.x y cadenas de texto

Tengo una funcion que corta una cadena de texto en 180 caracteres mas o menos. La tomé del foro. Pero la cuestion es que no me funciona bien con PHP 5.1.x

Código PHP:
Ver original
  1. function cortar_frase($frase_entrada, $cortar){
  2.  
  3.    if (strlen($frase_entrada) < $cortar)
  4.    return $frase_entrada;
  5.  
  6.    $frase_corta =  substr(utf8_decode($frase_entrada),0,$cortar); // obtener la frase cortada.
  7.    $palabras = str_word_count($frase_corta,1); // obtener array con las palabras.
  8.    $total_palabras = count($palabras)-1; // contar total array elementos y restar 1 elementos
  9.    $palabras = array_splice($palabras,0,$total_palabras); // le quitamos la ultima palabra.
  10.    $frase_salida = implode(' ',$palabras); //  y concatenamos con el espacio hacia una cadena.
  11.    $frase_salida .= "..."; // se añaden los puntos suspensivos a la cadena obtenida..
  12.  
  13.    return utf8_encode($frase_salida);
  14. }

Ya tuve que usar utf8_decode() y utf8_decode() para echarla a andar, pero ahora me encuentro con que las ñ y los acentos me desaparecen en un servidor con PHP 5.1.x (yo uso la 5.2.9 en local).

Alguna pista?