Bonjour,
je n'ai pas trouvé dans PHP une fonction similaire à substr qui permet d'extraire une portion de chaine sans couper les mots, c'est à dire en s'arrêtant au dernier mot entier.
J'en ai créé une mais je ne sais pas si c'est la meilleure solution ni la plus simple, je vous laisse juger:
J'appelle la fonction avec extract_whole_words($ma_chaine, 299) par exemple et il me retourne tous les mots entiers avant le 300 ème caractère.
je n'ai pas trouvé dans PHP une fonction similaire à substr qui permet d'extraire une portion de chaine sans couper les mots, c'est à dire en s'arrêtant au dernier mot entier.
J'en ai créé une mais je ne sais pas si c'est la meilleure solution ni la plus simple, je vous laisse juger:
J'appelle la fonction avec extract_whole_words($ma_chaine, 299) par exemple et il me retourne tous les mots entiers avant le 300 ème caractère.
// extraire chaine de mots entiers
function extract_whole_words($string, $length) {
$new_string = $string;
for($i = $length; $i > 0; $i--) {
if ( " " == substr($string, $i, 1)) {
$new_string = substr($string, 0, $i) . "...";
break;
}
}
return $new_string;
}