1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| <?
/**
* @param $texte : texte à découper
* @param $longueurMax : longueur max d'un mot
* @param $separateur : separateur pour decouper un mot
*/
function my_word_warp($texte, $longueurMax, $separateur = '-') {
//on découpe sur l'espace
$mots = explode(' ', $texte);
// on découpe les mots de plus de n caractères
$motsWrap = array();
foreach ($mots as $mot) {
$motWrap = $mot;
if (strlen($mot) > $longueurMax) {
$motParts = str_split($mot, $longueurMax);
$motWrap = implode($separateur, $motsParts);
}
$motsWrap[] = $motWrap;
}
return implode(' ', $motsWrap);
} |