我使用此功能来摘录文本并链接到完整内容。现在当达到符号(字母)的数量正在削减这个词。我不想削减第一,第二或任何单词。如何在单词之前或之后检查并摘录? 这是我使用的功能
function getExcerpt($str, $startPos=0, $maxLength=150) {
if(strlen($str) > $maxLength) {
$excerpt = substr($str, $startPos, $maxLength-3);
$lastSpace = strrpos($excerpt, ' ');
$excerpt = substr($excerpt, 0, $lastSpace);
$excerpt .= '...';
} else {
$excerpt = $str;
}
return $excerpt;
}
答案 0 :(得分:0)
你可以使用这样的东西
function getExcerpt($text,$length = 120,$direction = "down") {
while ( !in_array(mb_substr($text,$length,1,'UTF-8'),array(' ')) ) {
$direction == "down" ? $length-- : $length++;
}
return mb_substr($text,0,$length,'UTF-8');
}