我正在为我的自定义博客编写一个单词限制函数。我想限制索引页上的单词,并删除所有格式。目前,我的代码是:
function limit_words($string, $word_limit){
// Check if the string is too long
$text=strip_tags($string);
$words=explode(" ", $text);
$size=sizeof($words);
// Run the script
if ($size >= $word_limit){
return implode(" ", array_splice($words, 0, $word_limit).' <a href="#">Read more ...</a>');
}
else { return $text; }
}它工作得很好,除非我有一个以上的段落。如果我的第一段是20个单词,而我的限制是50个单词,它将去掉标签和空格,但随后会将第一段的最后一个单词和第二段的第一个单词放在一起作为一个单词。有没有办法确保段落之间有空格?我是一个新手,所以如果这是一个简单的解决方案,请告诉我就是这么简单,我会把自己锁在地窖里,直到它理解为止。或者类似的东西。
发布于 2013-05-13 00:02:51
查看html-source,可能您的文本在段落之间使用了换行符作为分隔符,这对html并没有多大意义。和debug:打印出单词数组,查看段落限制。换行符没有空格“",因此它保留为”一个单词“。
如果是换行符,搜索-将其替换为<br/>,以便在html中显示或使用段落。
https://stackoverflow.com/questions/16509171
复制相似问题