您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

php字符截取与过滤

2024/4/18 20:57:19发布3次查看
1月19日,装扮成《白蛇传》中“白娘子”(中)的演员在南京玄奘寺“腊八节品腊八粥”活动上为市民盛粥。[caption id=attachment_45 align=aligncenter width=432] “白娘子”布施腊八粥(组图)[/caption]当日是中国传统的腊八节,南京玄奘寺熬制了咸、甜两种口味的上万份腊八粥,众多市民前来品粥祈福。 新华社记者孙参摄

以上代码截取掉html标签,图片啊、[caption 啊等。
目前我用的是


问题:貌似html标签没有被过滤掉
回复内容: 1月19日,装扮成《白蛇传》中“白娘子”(中)的演员在南京玄奘寺“腊八节品腊八粥”活动上为市民盛粥。[caption id=attachment_45 align=aligncenter width=432] “白娘子”布施腊八粥(组图)[/caption]当日是中国传统的腊八节,南京玄奘寺熬制了咸、甜两种口味的上万份腊八粥,众多市民前来品粥祈福。 新华社记者孙参摄

以上代码截取掉html标签,图片啊、[caption 啊等。
目前我用的是


问题:貌似html标签没有被过滤掉
我觉得这样的替换比较完美,而且兼容其它标签
$content = '1月19日,装扮成《白蛇传》中“白娘子”(中)的演员在南京玄奘寺“腊八节品腊八粥”活动上为市民盛粥。[caption id=attachment_45 align=aligncenter width=432] “白娘子”布施腊八粥(组图)[/caption]当日是中国传统的腊八节,南京玄奘寺熬制了咸、甜两种口味的上万份腊八粥,众多市民前来品粥祈福。 新华社记者孙参摄';preg_replace(array(/]+>/s, /\[[^\]]+\]/s), '', $content);
话说[caption]只算是bbcode不算是html标签吧,所以你用strip_tags是木有效果的,所以你可以考虑先把bbcode转换为html标签再用strip_tags就应该正常了吧。
如果格式都是这么统一的话,可以考虑用下面的代码:
$s = array('[caption', ']'); str_replace($s, $r, get_the_content());
效率什么的我是不太清楚了,就当为你提供另外一种思路吧~
$pat[0]='/(\[caption)([\s|\s]+)\/>/';$pat[1]='/\[\/caption\]/';$str='[caption id=attachment_45 align=aligncenter width=432] “白娘子”布施腊八粥(组图)[/caption]';echo preg_replace($pat,'',$str);
不知道lz的期望输出结果是什么.
如果是想删除整个shortcode [caption][/caption]
用wp内置的函数remove_shortcode或者remove_all_shortcodes
如果是想保留
白娘子布施腊八粥(组图)
也很简单.
$content = wp_strip_all_tags(str_replace(array('[',']'),array(''),$content));
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录