我正在努力让我的网站Feed正常运行。
我需要选择一些内容并在我的Feed中显示。选择后,我剥离标签,然后显示。
问题在于:
数据仍然显示,好像标签仍然存在(但没有可见的html标签),例如。剥离后,在我的源头生病了:
你好(只是说明)
----两者之间会有差距,好像html字符仍然存在,但是当我查看源代码时看不到任何内容-----
您好
我该如何解决这个问题。感谢
修改
为了更清楚,剥离后我仍然得到这样的文字:
这是我的第一行
这是我的第二行,第一行和第二行之间存在间隙,好像有一个段落标记
更新
我正在使用这个:
$体= SUBSTR(用strip_tags(preg_replace函数( '/ \ N {2,} /', “\ n” 个,$行[ “POST_CONTENT”])),0150);
当我回显$ body时,它仍然保持新行
答案 0 :(得分:1)
strip_tags将逐字剥离标记,留下任何其他空格。 您可以使用正则表达式删除额外的换行符和空格,但根据您的内容,您可能会破坏它。
删除换行符:
$string = preg_replace('/\n{2,}/',"\n",$string);
删除多余的空格:
$string = preg_replace('/ {2,}/',' ',$string);
答案 1 :(得分:1)
您可能有一个\n
,它位于您删除的结束标记之后的段落末尾。
preg_replace('/[\p{Z}\s]{2,}/s',' ',$string);
将删除所有white space
,tabs
,new lines
和double spaces
并替换为单个空格。
\s
匹配任何空格字符。相当于Unicode字符类别[\f\n\r\t\v\x85\p{Z}]
。如果使用ECMAScript选项指定符合ECMAScript的行为,则\s
等同于[ \f\n\r\t\v]
。
答案 2 :(得分:0)
我遇到了一些非常烦人的相似。解决了修剪
$body=strip_tags(trim($row["post_content"]));