2012-08-02 69 views
-1

之前我有使用通过数据库迭代PHP,并处理HTML看起来像这样的代码:删除<br />立即名单

First line etc<br /> 
Text blah blah blah blah, etc<br /> 
Moar text blah blah blah,<br /> 
<ul> 
    <li>List Item 1</li> 
    <li>List Item 2</li> 
</ul> 

不过,我想<br />立即<ul>删除之前。即

... 
Moar text blah blah blah, 
<ul> 
... 

我不能使用CSS来解决这个问题,因为它是被解析成PDF格式。

我该如何着手去除<ul>(或<ol>)之前的<br />

在此先感谢

+2

如果您显示您的PHP代码 – Adi 2012-08-02 11:29:30

+0

echo $ string将会非常有帮助。 ($ i ==($ count - 1)?'':'
');' 其中你的循环条件是'$ i <$ count'否则如果它是'$ i <= $ count' {'echo $字符串。 ($ i == $ count?'':'
');'} – 19greg96 2012-08-02 11:30:42

+0

@ 19greg96不错的猜测.... – Baba 2012-08-02 11:31:19

回答

0

您可以使用正则表达式是这样的:

<?php 

$text = 'First line etc<br /> 
Text blah blah blah blah, etc<br /> 
Moar text blah blah blah,<br /> 
<ul> 
    <li>List Item 1</li> 
    <li>List Item 2</li> 
</ul> 
'; 

$text = preg_replace('#<br\s*/>\s*<ul>#ims',"\n<ul>",$text); 
+0

这是为什么downvoted? – catchmeifyoutry 2012-08-02 11:33:07

+0

这很完美!正是我想要的。我对正则表达式不是很熟悉,现在也没有时间去学习它们。 – user1571215 2012-08-02 11:38:15

+0

你应该学习他们,他们是有用的很多:) – Oussama 2012-08-02 11:39:46

0

我使用数组这一点。

$foo = get_elements_to_output_in_some_way_or_another(); 

echo implode("<br />\n", $foo); 
+0

好主意,甚至没有出现在我身上:D – 19greg96 2012-08-02 11:33:19

相关问题