我有一个包含大量HTML(HTML电子邮件正文)的字符串。
我想要做的是丢失所有HTML但保留换行符,我尝试strip_tags()
但这对我来说没有用,它使字符串只有1行。
完成此操作后,我想只回显此字符串中的前5行。
有人有个主意吗?
更新
$string = strip_tags($string, '<p><br><br />');
似乎工作,现在我必须从字符串中选择前5行,任何人都有想法?
更新: 数组不断给出一些空值。 我设法删除了空的,但阵列没有重新开始计数。 Array现在看起来像这样:
Array ( [8] =>
Dit is een nieuwe test met meerdere regels.
[9] =>
Dit is regel nummer 2.
[10] =>
Dit is regel nummer 3.
但它应该再次从0开始计数。
array_filter() array_merge()
等不起作用。
答案 0 :(得分:3)
将strip_tags与第二个参数一起使用,如下所示:strip_tags($html, '<p><br>')
。如您所见,第二个参数与文档中的$allowable_tags
一样。
另请参阅this问题/答案。
或许最容易获得前几行的是explode:
$lines = explode("<br>", $string); // take first 5 from this array by exploding new lines
使用$lines[0]
(第1行),$lines[1]
(第2行)等获取行。
答案 1 :(得分:0)
现在修复它,不再使用电子邮件消息但是从DB获取消息数据,现在我可以剥离字符串并爆炸,现在开始计数为0!
感谢您的想法。