Función que trunca texto con palabras completas

1 COMENTARIO -  Publicado hace 6 meses -  Clasificado en: ,

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.

<?php
// Original PHP 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 » »

Algunas entradas relacionadas:

También te puede interesar:

Bienvenido a Intenta. Has venido desde ; si andabas buscando algo espero que este post satisfaga tus expectativas.

Tutorial Photoshop: crear un icono de un Compact Disc

Tutorial Photoshop: crear un icono de un Compact Disc

StoryPlace

StoryPlace

Popuri.us: conoce la popularidad de un sitio

Popuri.us: conoce la popularidad de un sitio

¿Por qué la gente sigue usando IE 6?

¿Por qué la gente sigue usando IE 6?

Flexigrid

Flexigrid

COMENTARIOS

Publicado hace 6 meses
Regoremor -   http://www.regoremor.com

Hola si de algo puede servir a los que lean este post que me parece muy útil, les dejo par de direcciones con un codigo parecido.

http://romeror.blogspot.com/2007/05/recortar-cadena-de-texto-mediante-una.html

http://www.posteet.com/view/642

Saludos

Espero les sirva.

Regoremor
Publicado hace 6 meses
Francisco -   http://www.webintenta.com

Hola,
Interesantes. Gracias por la aportación.
Haz un comentario

¡Gracias por dejar tu opinión! Por favor procura que tu comentarios sean apropiados respecto al tema tratado en la entrada; que no sean spam, u ofensivos, de otro modo, serán eliminados. Todos los comentarios serán moderados antes de su publicación por lo que su aparición en la web puede verse aplazada un cierto tiempo. Si deseas realizar algún comentario, crítica o sugerencia sobre la propia web puedes hacer a través de la siguiente dirección de correo: webintenta@webintenta.com