par
AB » 20 oct. 2010, 17:43
Pour limiter l'affichage à un nombre précis de caractères tu peux utiliser ceci :
function Truncate($string, $size, $encodage = 'utf-8') {
$chaine = mb_substr($string, 0, $size, $encodage); // coupe la chaine à la taille max désirée
if ($chaine == mb_substr($string, 0, $size + 1, $encodage)) // pas de modif
return $chaine;
// recherche le dernier espace (s'il y en a un)
if ($lastSpace = strrpos($chaine, ' '))
return substr($chaine, 0, $lastSpace) . '...';
else
return $chaine . '...';
}
$string est ta chaine
$size le nombre de caractères avant que le texte ne soit tronqué
$encodage pour définir ton encodage
La chaine n'est tronquée que sur un espace (donc les mots ne sont pas coupés).
Pour limiter l'affichage à un nombre précis de caractères tu peux utiliser ceci :
[php]function Truncate($string, $size, $encodage = 'utf-8') {
$chaine = mb_substr($string, 0, $size, $encodage); // coupe la chaine à la taille max désirée
if ($chaine == mb_substr($string, 0, $size + 1, $encodage)) // pas de modif
return $chaine;
// recherche le dernier espace (s'il y en a un)
if ($lastSpace = strrpos($chaine, ' '))
return substr($chaine, 0, $lastSpace) . '...';
else
return $chaine . '...';
}[/php]
$string est ta chaine
$size le nombre de caractères avant que le texte ne soit tronqué
$encodage pour définir ton encodage
La chaine n'est tronquée que sur un espace (donc les mots ne sont pas coupés).