2012-08-02 70 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

相關問題