PHP - Truncate a string after n characters to the nearest space - Tronquer une chaîne après n caractères
Publié le .
[EN] Here is a simple way to cut a character chain after a certain defined length and without cutting a word in the middle. The hyphenation is done at the nearest space. This can be useful for giving an overview of the beginning of a long text. [FR] Voici une manière simple de couper une chaine de caractère après une certaine longeur définie et sans couper un mot en son milieu. La césure se fait à l'espace le plus proche. Ceci peut être utile pour donner un aperçu du début d'un long texte.
// a lonnng string ...
$str = "Le Lorem Ipsum est simplement du
faux texte employé dans la composition et
la mise en page avant impression.
Le Lorem Ipsum est le faux texte standard de
l'imprimerie depuis les années 1500, quand un
imprimeur anonyme assembla ensemble des morceaux
de texte pour réaliser un livre spécimen de polices
de texte. Il n'a pas fait que survivre cinq siècles,
mais s'est aussi adapté à la bureautique informatique,
sans que son contenu n'en soit modifié. Il a été
popularisé dans les années 1960 grâce à la vente
de feuilles Letraset contenant des passages du
Lorem Ipsum, et, plus récemment, par son inclusion
dans des applications de mise en page de texte,
comme Aldus PageMaker";
// number chars to cut
$number_to_cut = 300;
// string truncated in one line !
$truncated_string = substr($str, 0, strrpos(substr($str, 0, $number_to_cut), ' '));
// test return
echo $truncated_string;
// variation -> (add ellipsis) : echo $truncated_string.' ...';
// output :
/*
Le Lorem Ipsum est simplement du
faux texte employé dans la composition et
la mise en page avant impression.
Le Lorem Ipsum est le faux texte standard de
l'imprimerie depuis les années 1500, quand un
imprimeur anonyme assembla ensemble des morceaux
de texte pour réaliser un livre
*/
Mots clés : PHP, truncate a string, truncate a string to the nearest space, reduce string, summarize a text to a defined number of characters, couper une chaîne de caractères après n caractères, résumer un texte à un nombre de caractères définis, php