Une fonction php toute simple qui permet de déterminer le nombre de caractère d’une chaine de caractère et de tronquer le texte si nécessaire. Idéal pour concevoir rapidement des résumés d’un post ou d’une page en affichant un nombre bien déterminé de caractère mais sans couper le dernier mot en plein milieu. Tout d’abord la fonction commencera par nettoyer la chaine de caractère des balises html et php, grâce à la fonction php strip_tag.
function tronque($chaine, $nb, $end)
{
// $chaine est la chaîne de caractères
// $nb le nombre de caractères maximum à afficher
// $end la chaine de caractères à ajouter (par ex : ...)
$chaine = strip_tags($chaine);
// Si le nombre de caractères présents dans la chaine est supérieur au nombre
// maximum, alors on découpe la chaine au nombre de caractères.
if (strlen($chaine) > $nb) {
$chaine = substr($chaine, 0, $nb);
// on récupère l'emplacement du dernier espace dans la nouvelle chaine
// pour ne pas découper un mot.
$position_espace = strrpos($chaine, " ");
// on redécoupe à la fin du dernier mot
$texte = substr($chaine, 0, $position_espace);
// puis on ajoute une chaine de caractère
$chaine = $chaine . $end;
}
//on retourne la variable modifiée
return $chaine;
}