我试图将字符串修剪到second
段落的末尾,所以基本上是</p>
的第二个实例的结尾
我已经将一些代码修剪为500个字符,到最近的空格。我怎么能做这样的事情,但改为使用</p>
作为参数,并且可变长度(段落可以很长)。
我还需要添加一个检查以查看整个帖子内容是否为300个字符,在这种情况下我可以输出整个内容
这是我所拥有的类似的代码,但不知道如何调整它。你会怎么做?
if (strlen($content) > 300){
$content_trimmed = substr($content, 0, strpos($content, ' ', 500));
}
答案 0 :(得分:1)
此函数将返回前两段:
<?php
$content = "<p>Paragraph One</p><p>Paragraph Two</p><p>Paragraph Three</p>";
function trimArticle($content) {
if (strlen($content) > 300) {
$paragraphs = explode('</p>', $content);
return $paragraphs[0].'</p>'.$paragraphs[1].'</p>';
} else {
return $content;
}
}
echo trimArticle($content);
?>
有这个结果:
<p>Paragraph One</p><p>Paragraph Two</p>
答案 1 :(得分:0)
另一种方法是检查长度,然后使用爆炸来抓取那些部分。然后添加缺少的截断标记,该标记爆炸抓取并连接前两个数组元素。
if (strlen($content) > 300){
$content = explode("</p>",$content) ;
$content_trimmed = $content[0]."</p>".$content[1]."</p>";
} else {
$content_trimmed = $content;
}
echo $content_trimmed;