Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

alexsauer

Função de Resumo

Recommended Posts

Olá...

Abaixo uma função que permite resumir um texto à quantidade de caracteres especificados, sem cortar palavras ao meio. Talvez seja de utilidade, afinal, quem nunca precisou de algo assim.

 

PHP
function resumo($string,$chars) {

        if (strlen($string) > $chars) {

                $var='0';

                while($var == '0'){

                        if( (substr($string,$chars,1)) == ' '){

                                $var='1';

                        } else{

                                $chars++;

                        }  

                }

        }

        return substr($string,0,$chars);

}

 

Uso:

 

<?=resumo('Maria gosta de comer maça',10)?>

 

Se alguém achar erros, por favor avise-me... T+ galera

 

T+ galera

Compartilhar este post


Link para o post
Compartilhar em outros sites

Antes tarde do que nunca ^_^ :

 

Acredito que você já tenha descoberto Ricardo, mas apenas para deixar registrado, para cortar a palavra se a primeira palavra for maior que o $chars, basta mudar a linha $chars++; por $chars--;

 

É isso, e valeu pelo código Alex!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala Alex olha só voce já tentou colocar ex: <?=resumo('bla bla',130)?> "130" caracteres?

 

Se você coloca acima de 99 o codigo buga :P

 

Espero estar contribuindo :P

 

Mais essa funcao deu uma salvada aqui...

 

Um Salve pra voces :P

Fuiz.!

 

=========================================

 

Edit: com o $chars--; assim resolve também o probleminha de quantidade acima... tosc tosc malz..! :)

 

Hugg!!.. Bye!.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A função inicial entra em loop infinito em algumas situações. Deixo aqui uma versão melhorada:

 

function resumo($string,$chars) {
  if (strlen($string) > $chars) {
    while (substr($string,$chars,1) <> ' ' && ($chars < strlen($string))){
      $chars++;
    };
  };
  return substr($string,0,$chars);
};

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.