• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

nuno_couto

Notícias - mostrar apenas algumas linhas de texto

10 mensagens neste tópico

Alguem me sabe dizer como se faz o típico sistema de notícias em que aparece um texto cortado e com reticências e clicando vê-se a notícia completa?

O que queria saber é se há algum comando para ir buscar apenas alguns caracteres ou palavras.

Exemplo

Os fãs do ciclismo que sejam utilizadores do Google Earth podem acompanhar ao pormenor o trajecto de cada uma das etapas daquela que está entre as melhores provas de ciclismo do mundo.

Ficaria

Os fãs do ciclismo que sejam utilizadores do Google Earth... (ver mais)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu por acaso tenho disso no meu site ;) A função é simples:

<?
$texto = substr($texto,0,360);
$texto .="... (ver mais)";
?>

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

É bastante fácil... 1º que tudo tens de ter uma variavel texto definida, com um texto qualquer com mais de 360 caracteres... se for inferior não vais ver diferença como é obvio olhando para a função :)

Depois é só correres aquele excerto de código :D Se queres mais info sobre a função vai ao manual do PHP :D

http://www.php.net/substr

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em vez de contares os caracteres podes contar as palavras usando str_word_count() e so se tivesse mais de N palavras é q cortavas

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não gosto q as palavras fiquem a meio

<?php

$var = "exemplo";

echo str_word_count($var);

echo strlen($var);

?>

str_word_count vai mostrar  "1" e strlen vai mostrar "7"

Neste caso é preferivel utilzar-se strlen porque conta o comprimenta de toda frase, nós não queremos cortar uma frase ao meio...

Exemplo do strlen neste caso:

<?
$frase = "teste1 teste2 teste3 teste4";
if(strlen($frase) >= 10) {
$frase = preg_replace(substr($texto,0,10), "...", "$frase");
echo $frase;
} else {
echo $frase;
}
?>

Assim funciona bem o mesmo não acontece com str_word_count();

Mas se poderes fazer um exemplo para mostrar que str_word_count(); funciona melhor  seria bom.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Acho que também vou utilizar no meu CMS B) parece ser muito bom...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boa dica Nazgulled :P Ora vamos cá experimentar o Aplaudir Post B)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora