Atualizado em 08 de Maio de 2013

Cortar string sem cortar palavra no meio

Olá pessoal,

vocês já devem ter se deparado com a seguinte situação: Você esta sendo o resumo de um artigo em blog de notícia, quando no final deste resumo você se encontra com uma palavra cortada seguida de três pontinhos, dificultando a compreensão do texto. Pois é este pequeno equivoco é cometido por vários sites e blogs de notícia.

Neste post vamos ver como cortar uma string sem cortar palavra no meio com o PHP.

Aqui no blog mesmo já vimos o comando substr que corta uma palavra. A maioria dos sites/blogs usa este comando para fazer o resumo dos textos, porém este comando corta na quantidade caracteres exata, independentemente se estiver no meio de uma palavra importante.

Então vamos ver a função que cortar uma string sem cortar palavra no meio.

<?php
// Texto Completo
$textoCompleto = "Neste post vamos ver como cortar uma string sem cortar palavra no meio com o PHP";


/*
  * Função que Cortar String sem Cortar Palavra Importante.
  * A função tem três parametros:
  * 1ª: Texto Completo
  * 2ª: Quantidade de Caracteres do Resumo
  * 3ª: Simbolo a ser usado no final do resumo (Por padrão a Função usa "...")
  *
  * Criado por: Mauricio Programador.
  */

function resumoTexto($texto, $quantidade, $simbolo = '...')
 {
  //Remove as tags HTML do texto
  $textoResumo = strip_tags($texto);

  //Verifica se o tamanho do texto e maior do que o tamanho do resumo
  if(strlen($textoResumo) > $quantidade)
  {
   //Se for maior, corta o texto sem cortar palavra no meio
   return substr($textoResumo, 0, strpos($textoResumo, ' ', $quantidade)).$simbolo;
  }
  else
  {
   //Se não for maior, mostra o texto completo
   return $textoResumo.$simbolo;
  }
 }


// Chamando a função
echo resumoTexto($textoCompleto, 18, '...');
?>


E isso aí pessoal, o script já está todo comentado, em caso de dúvida e só cometar.

Download do script Clique aqui.

"Esta dica te ajudou de alguma forma?" Então ajude outras pessoas compartilhando este conteúdo com seus amigos! =)


Até a próxima.

Tags:  Comandos PHP | Funções | PHP

NEWSLETTER

Receba dicas de programação
em seu e-mail

TWITTER

Acompanhe tudo o que rola
com Mauricio Programador

NEWSLETTER