2010-11-23 74 views
3

我正在使用PHP來創建一些基本的HTML。這些標籤都是一樣的,但實際的鏈接/標題對應的PHP變量:PHP:如何防止不必要的換行符

$string = '<p style="..."><a href="'.$html[$i].'"><strong><i>'.$title[$i].'</i></strong></a> 
<br>'; 
echo $string; 
fwrite($outfile, $string); 

結果HTML,既作爲呼應(當我查看網頁源文件),並在簡單的txt文件,我寫如下所示:

<p style="..."><a href="http://www.example.com 
"><strong><i>Example Title 
</i></strong></a></p> 
<br> 

雖然這可行,但它不完全是我想要的。看起來PHP每次中斷字符串插入變量時都會添加換行符。有沒有辦法來防止這種行爲?

+6

您是否確定在要插入的變量末尾沒有換行符?嘗試在trim()中包裝它們以查看是否停止它。如果這樣做,那麼你的變量實際上包含換行符。 – 2010-11-23 01:47:44

回答

2

雖然它不會影響你的HTML頁面的換行符在所有的(除非您使用pretext-wrap: pre),你應該能夠調用trim()這些變量刪除換行符。

要了解你的變量有一個換行符在前面或後面,試試這個正則表達式

var_dump(preg_match('/^\n|\n$/', $variable)); 

(我認爲你必須使用單引號所以PHP不把你\n成面值換行符在字符串)。

0

我相信由於多字節編碼,換行符顯示出來。嘗試:

$newstring = mb_substr($string_w_line_break,[start],[length],'UTF-8'); 

這對我解析html後出現奇怪換行符時工作。

相關問題