2012-02-01 24 views
0

我遇到了一個問題,即我的文本中的新行在檢索後未顯示。下面是我插入文本DB:MySQL DB內新行

$text = <<<MESSAGE 
line1 

line2 

line3 
MESSAGE; 

$sql_text = '"'.mysql_real_escape_string($text).'"'; 

$sql = "INSERT INTO table (text_value) VALUES ($sql_text)"; 

望着在phpMyAdmin的數據我看到了新的生產線,但是當我找回它,像這樣:

echo str_replace("\r\n", "<br>\n", $text_from_db); 

它看起來像這樣:

line1 line2 line3 

任何想法我失蹤了?

+0

確定每行有一個'\ r \ N'在年底,而不僅僅是一個'\ N'? – fivedigit 2012-02-01 20:05:12

回答

1

你怎麼知道新行是\r\n?它可能只是\n

使用此語句來檢查,

echo nl2br($text_from_db); 
+0

這工作......謝謝! – Paul 2012-02-01 20:09:21

0

換行符可能是\n\r,或\r\nnl2br()處理所有這些情況:

echo nl2br($text_from_db); 
+0

呃,我很慢。 :) – dtbarne 2012-02-01 20:10:51

+0

:D總是發生在SO。 – 2012-02-01 20:14:48