En php, il existe une fonction pour effectuer un "Wordrwap". Par contre, celle-ci ne se préocupe pas du contenu de la chaîne de caractères. En d'autre terme, si votre chaîne contient du contenu html tel une image ou un lien hypertext, il ce peut que celui-ci soit tronqué et que lors de son affichage celui-ci ne s'affiche pas correctement. C'est pourquoi nous allons vous montrez une alternative à cette fonction.
CODE :
function noHtml_wordwrap($str,$cols,$cut) {
$tag_open = \'<\';
$tag_close = \'>\';
$count = 0;
$in_tag = 0;
$str_len = strlen($str);
$segment_width = 0;
for ($i=0 ; $i<=$str_len ; $i++){
if ($str[$i] == $tag_open) {
$in_tag++;
} elseif ($str[$i] == $tag_close) {
if ($in_tag > 0) {
$in_tag--;
}
} else {
if ($in_tag == 0) {
$segment_width++;
if (($segment_width > $cols) && ($str[$i] != \" \")) {
$str = substr($str,0,$i).$cut.substr($str,$i+1,$str_len-1);
$i += strlen($cut);
$str_len = strlen($str);
$segment_width = 0;
}
}
}
}
return $str;
}
{mos_fb_discuss:no_discuss}






















