Limiteur de texte [Résolu]

Messages postés
25
Date d'inscription
jeudi 5 mai 2005
Dernière intervention
10 août 2005
- - Dernière réponse : cs_Anthomicro
Messages postés
9440
Date d'inscription
mardi 9 octobre 2001
Dernière intervention
13 avril 2007
- 24 juil. 2005 à 01:40
Bonjour,



J'aimerais faire un if qui limite le nombre de caractère d'un texte, et
que si celui-ci est dépassé, il affiche par exemple 200 caractères, et
à la fin il met trois petits points (...).

Comme dans "Derniers Blogs" ou "Derniers messages du forum" à gauche.



Mais, impossible de faire ça. J'ai essayé de faire ça avec strlen type :



if (strlen($text) > $max_text) // $max_text contient le nombre maximal de caractère)

{

mais dans le if, je ne sais pas quoi mettre



Merci de votre aide.
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
Messages postés
78
Date d'inscription
dimanche 22 février 2004
Dernière intervention
24 juillet 2005
3
Merci
Pas besoin de condition pour ceci, tu as juste besoin d'utiliser la fonction substr();

exemple :



$text = substr($text, 0, 200); // Recupere les 200 premier caractere de la chaine

echo $text; // Affiche le texte formaté



Mais bon cette methode n'est pas vraiment la meilleur, car le dernier mot peut etre coupé.

Pour recupere les x premier mot, j'ai une petite fonction pour toi :



<?



function recup_mots($text,$nbr_mots)

{

$chaine = explode(" ",$text);

for($i=0; $i<$nbr_mots; $i++)

{

$nouvelle_chaine.=" ".$chaine[$i];

}

return $nouvelle_chaine;

}



$text = "salut ca va ?"; // Chaine à coupée

echo recup_mots($text, 2); // Affiche les 2 premier mots de la chaine, donc "salut ca".



?>

Voila j'espere que ca te servira et que j'ai correctement repondu a ta question.

@+, julien

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 110 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_wolfcyber
Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Dernière intervention
1 juillet 2007
0
Merci
Sérieux dès que ta la réponse tu pourras m'envoyer ta source sur mon adresse email :
[mailto:Milkasoprano@wanadoo.fr Milkasoprano@wanadoo.fr] je suis comme toi ! ca pourrait éventuellement minteresser pour mon site portail :)
@ bientot ;)
Commenter la réponse de milkasoprano
Messages postés
9440
Date d'inscription
mardi 9 octobre 2001
Dernière intervention
13 avril 2007
12
0
Merci
Salut,



<?php

if(strlen($chaine)>200)

{

echo substr($chaine,0,197),'...';

}

else

{

echo $chaine;

}
?>
<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Commenter la réponse de cs_Anthomicro
Messages postés
25
Date d'inscription
jeudi 5 mai 2005
Dernière intervention
10 août 2005
0
Merci
Merci pour ta fonction wolfcyber.

Elle marche superbement.
Commenter la réponse de cs_Dave73
Messages postés
9440
Date d'inscription
mardi 9 octobre 2001
Dernière intervention
13 avril 2007
12
0
Merci
Tu peux remplacer la fonction de wolfcyber par celle-ci :



<?php

$chaine='Essai de chaîne. Nous allons maintenant
faire une fonction permettant de récupérer les x premiers mots';



$tableau=explode(' ',$chaine);



$tableau_final=array_slice($tableau,0,10); //récupère les 10 premiers mots

echo join(' ',$tableau_final);

?>



et voilà :-)



a +

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Commenter la réponse de cs_Anthomicro
Messages postés
78
Date d'inscription
dimanche 22 février 2004
Dernière intervention
24 juillet 2005
0
Merci
pas mal ta methode anthomicro ;-)



@+
Commenter la réponse de cs_wolfcyber
Messages postés
9440
Date d'inscription
mardi 9 octobre 2001
Dernière intervention
13 avril 2007
12
0
Merci
Surtout plus rapide à l'éxécution je pense ;-)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Commenter la réponse de cs_Anthomicro
Messages postés
78
Date d'inscription
dimanche 22 février 2004
Dernière intervention
24 juillet 2005
0
Merci
Ouai merci anthmicro, j'ai regarder ton petit chat, il dechire...bien joué !!
Commenter la réponse de cs_wolfcyber
Messages postés
9440
Date d'inscription
mardi 9 octobre 2001
Dernière intervention
13 avril 2007
12
0
Merci
;-)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Commenter la réponse de cs_Anthomicro

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.