0

好的,我只想strip_tags在字符串的最后使用函数来摆脱任何<br />标签。

这就是我现在所拥有的,但这并不好,因为它会从字符串中的任何地方剥离这些标签,这不是我想要的。如果它在字符串的末尾,我只需要将它们剥离...

$string = strip_tags($string, strtr($string, array('<br />' => '&#10;')));

我怎么能做同样的事情,除了只在字符串的末尾?

多谢你们!!

4

3 回答 3

1

您可以使用以下代码

$string = str_lreplace("<br />", "", $string);

您也可以替换标准的 HTML 中断:

$string = str_lreplace("<br />", "", $string);
$string = str_lreplace("<br>", "", $string);
于 2012-07-08T02:21:52.313 回答
0

好的,这是我正在使用的方法,它完全按照我想要的方式工作......

$search = strrpos($string, '<br />');
if($search !== false && $search == strlen($string) - 6)
    $string = substr_replace($string, '', $search, 6);

我通过查看 Connor Pete 发布的链接获得了这个答案,因此该链接上的代码帮助我实现了位于此处的最终结果。

老实说,我什至不是真的在寻找<br />标签。我只是为了争论而发布了它。我面临的主要问题是我有一个未关闭的粗体标签<b,它在不应该存在的字符串末尾吐出,因为当写入文档时,它会导致页面的其余部分以粗体显示!所以,老实说,这被改为:

$replace = strrpos($string, '<b');
if($replace !== false && $replace == strlen($string) - 2)
    $string = substr_replace($string, '', $replace, 2);

感谢您在这件事上的所有帮助:)

于 2012-07-09T02:57:54.387 回答
0

获取最后一次出现的索引<br/>并将其删除:

$index = strrpos($string, '<br/>');
if($index == strlen($string)-5){
    $string= substr($string,0,$index);
}
于 2012-07-08T02:48:38.093 回答