删除"更多"之后的文字标签(PHP)

时间:2014-03-15 11:38:48

标签: php

如何在! - more-- tag?

之后删除文本

我试过了:

function addMore($text) {
    $text = preg_replace('/!--more--(.*)/', ' ', $text);
    return $text;
}

提前致谢。

5 个答案:

答案 0 :(得分:1)

只需删除字符串,将其替换为! - more - :

$text = preg_replace('/!--more--.*/', '!--more--', $text);

答案 1 :(得分:1)

$text = "plain to you howhings of the great explorer of the truth.!--more-- plain to you how allt the truth,/";
echo $short = substr($text, 0, strpos( $text, '!--more--'));

输出: http://codepad.org/atXzthBc

答案 2 :(得分:0)

你可以使用爆炸功能或只需 substr ,如下所示:

$text = substr($text, 0, strpos($text, '!-more-'));

答案 3 :(得分:0)

添加's'修饰符,使preg甚至在断行上也能正常工作:

function addMore($text) {
    $text = preg_replace('/!--more--(.*)/s', ' ', $text);
    return $text;
}

看这里: http://php.net/manual/en/reference.pcre.pattern.modifiers.php

答案 4 :(得分:0)

function addMore($text) {
$newtext=explode("!--more--",$text);

return $newtext[0];
}