Inicio > php > Función que trunca texto con palabras completas

Función que trunca texto con palabras completas

Miércoles, 16 de diciembre de 2009 Juan Jorquera Dejar un comentario Ir a comentarios

Original de WebIntenta

Esta función sólo trunca una cadena cuando encuentra el punto de ruptura que le indiquemos -un espacio,
un punto, dos puntos,..- y resulta muy útil, por ejemplo, para mostrar un extracto de un artículo
completo sin romper las palabras.

<
// Original  code by Chirp Internet: www.chirp.com.au
// Please acknowledge use of this code by including this header.
function myTruncate($string, $limit, $break=“.”, $pad=“…”) {

	// return with no change if string is shorter than $limit
	if(strlen($string) <= $limit)
	return $string;

	// is $break present between $limit and the end of the string?
	if(false !== ($breakpoint = strpos($string, $break, $limit))) {
		if($breakpoint < strlen($string) - 1) {
			$string = substr($string, 0, $breakpoint) . $pad;
		}
	}
	return $string;
}
?>

Ejemplo:


$cadena=“Ut at risus magna. Aenean in urna urna, bibendum ultricies libero. Quisque accumsan, dolor ut sagittis fermentum, ipsum sapien posuere arcu, eget fermentum lorem leo mattis risus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer rhoncus tincidunt pulvinar. Aliquam sed odio vitae erat vestibulum eleifend. In hac habitasse platea dictumst. Fusce fringilla aliquet leo a porta. Proin facilisis vehicula nisi, pharetra pellentesque turpis rutrum in. Quisque laoreet nisi augue. Fusce lorem metus, mollis sed aliquam eget, dapibus sit amet dui. Nulla facilisi. Vestibulum laoreet, orci in euismod tristique, est ligula sagittis dolor, a pellentesque odio ligula tempus risus. Aenean elit ligula, facilisis sed tincidunt ac, facilisis eget ipsum. ”;
echo myTruncate($cadena, 200,’ ’, ’…’);

Visto en 21 Really Useful & Handy PHP Code Snippets » »

Comparte !
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • BlinkList
  • email
  • laaik.it
  • Live
  • Meneame
  • MisterWong
  • MyShare
  • Pownce
  • Slashdot
  • StumbleUpon
  • TwitThis
  • Blogosphere News
  • De.lirio.us
  • Technorati

Unique visitors to post: 145

Categories: php Tags: ,
  1. Jose Gomez
    Viernes, 18 de diciembre de 2009 a las 12:34 | #1

    excelente! muy buen articulo

  1. Sin trackbacks aún.