[RESOLVIDO] Limitar texto e incluir 3 pontinhos.
Bom gente, sou iniciante em PHP, faz duas semanas que comecei dar meus primeiros passos.
Até então, só programava em ASP. Estou criando meu sistema de CMS, agora em PHP, está sendo um grande desafio pra mim.
Hoje me deparei com a necessidade de limitar um texto, todo mundo conhece o substr , mas não fiquei satisfeito, pois eu queria colocar 3 pontinhos (...) no final do texto. Você deve estar dizendo: - Muito simples Vinícius, faça assim:
<?php echo substr($linha['valor'],0,60); echo"..." ?>
Lógicooo, porque não pensei nisso antes!? Se meu texto conter mais de 60 caracteres, este comando adicionará 3 pontinhos (...) quando completar 60 caracteres. Uau de mais!
Mas se meu texto conter apenas 10 caracteres? Ele tambem adicionará os 3 pontinhos(...)? A resposta é Sim! =/
Bom, encontrei muitas matérias e códigos para resolver isto, muitos resolviam, mas cada código imenso, funções mirambolantes, achei tudo muito estranho, pois sempre ouvia dizer que o php era uma linguagem descomplicada, mas isso não vem ao caso, emfim... resolvi criar uma função, bem parecida com uma que muitos programadores em ASP conhecem.
Lá vái:
<?php// Função criada por Vinícius Siller - vinicius.siller@hotmail.com - 12/09/2007// Função para limitar texto e adicionar 3 pontinhos no final.function resume($var, $limite){// Se o texto for maior que o limite, ele corta o texto e adiciona 3 pontinhos.if (strlen($var) > $limite){echo substr_replace ($var, '...', $limite);}else{// Se não for maior que o limite, ele não adiciona nada.echo substr_replace ($var, '', $limite);}}?><?php echo resume(('Meu texto a ser limitado'),20) ?>
Com esta função, ficará impresso desta forma:
Meu texto a ser limi...
Mas se eu aumentar o limite para 80, ficará desta forma:
Meu texto a ser limitado
Como já disse, sou programador de primeira viagem em php, se alguem puder melhorar o código ou dizer se tem algo errado, ficarei grato.
Espero ter contribuído.
Té+ pessoal!
Discussão (11)
Carregando comentários...