Preg_replace替换img标签以外的html标签

时间:2016-10-11 13:10:42

标签: php html

我有一个函数来限制从博客帖子的RSS订阅源描述中提取的单词数量。它也忽略了任何html标签。 这是代码

<?php
function limitWords($s) {
return preg_replace('/((\w+\W*){79}(\w+))(.*)/', '${1}', $s);    
}
 ?>

<a title="<?php echo $item->title;?>" href="<?php echo $item->link; ?>"><?php echo limitWords($item->description()); ?> <?php echo '....' ?></a>

现在在一些描述中有图像但我需要显示它们。是否有可能不在我的上述函数中替换img标签?所以从<img>替换所有html标签APART任何想法?

1 个答案:

答案 0 :(得分:1)

本机php strip_tags函数可以为您完成。没有必要用正则表达式解析字符串。看看下面的例子:

$sYourString = '<a href="" title=""><img src="" alt=""><span>text</span></a>';
$sStrippedString = strip_tags($sYourString, '<img>');

这段代码是untestet。但它应该适合你。