EspañolDeutschFrançaisItalianoPortuguêsРусскийΕλληνικά日本語中文(简体)हिन्दी; हिंदीالعربية
PF Preguntas - Foro

Cómo ajustar o recortar una cadena de texto a una determinada longitud en PHP

Programación PHP  
 
Cómo ajustar o recortar una cadena de texto a una determinada longitud en PHP

Existen multitud de funciones y métodos sobre el tipo de datos cadena (String) en PHP. Normalmente, cuando queremos acortar o ajustar una cadena a un determinado número de caracteres, usamos la función substr de la siguiente forma:

donde la variable $longitud tendrá el valor del tamaño de cadena resultante que queremos conseguir.

Imagina ahora que queremos realizar el ajuste o recorte de una cadena de texto que vamos a usar en una página web como entradilla de alguna noticia, artículo o similar. Si usamos directamente la función substr sobre la cadena a ajustar, esta función no va a hacer distinción entre letras, palabras y/o espacios en blanco, por lo que el resultado puede ser una cadena donde la última palabra esté cortada.

Vamos a ver como podemos solventar esto, haciendo que, dada una cadena y una longitud, ésta se ajuste a dicho tamaño, teniendo en cuenta que no debe cortar palabras. Para ello, fíjate en la siguiente función:

Esta función toma como parámetros una cadena y la longitud deseada.

Vamos a ver un ejemplo. Si tenemos la siguiente cadena de caracteres y aplicamos la función anterior sobre la misma:

el resultado será el siguiente:

Si en vez de usar esta función, hubiéramos usado la función substr, el resultado hubiese sido diferente:

dejando la última palabra de la cadena a medias.

Como puedes ver, este último resultado no quedaría muy bien, como entradilla, en una página web, ya que estamos cortando palabras. Resulta más idóneo el resultado obtenido al llamar a la función trimString, la cual ha evitado los posibles cortes eliminando aquellas palabras que se quedan a medias.

 

Únete al canal de Telegram

Déjanos un comentario o entra al  Foro
Share on Facebook Tweet about this on Twitter Share on Google+ Pin on Pinterest Share on Reddit Share on VK Share on StumbleUpon Share on Tumblr Share on LinkedIn Email this to someone Print this page
Etiquetas: , ,

Deja un comentario