我儘量避免提出愚蠢的問題,但是由於某些原因,這只是不起作用。我正在從數據庫中檢索一些文本,幷包含換行符。當使用回聲直線距離,這是輸出:不能用php中的內容替換 n使用數據庫中的內容
=== BOLD TEXT ===\nHere is some text.
這是我如何檢索它:
$row = $query->row();
$content=$row->course_content;
無論下面有什麼影響.....
$content= str_replace(array("\r\n", "\r", "\n"), "<br />", $content);
$content= str_replace("\n", " ", $content);
$content = nl2br($content);
然而,當我硬編碼在一個字符串中的原始聲明,
$content="=== BOLD TEXT ===\nHere is some text.";
龐!它的工作原理...爲什麼它拒絕接受數據庫輸入,但手動字符串沒問題?
完整代碼:
//Switch between these two:
$row = $query->row();
$content=$row->course_content;
$content="=== BOLD TEXT ===\nHere is some text.";
$content = str_replace(array("\r\n", "\r", "\n"), "<br />", $content);
$content = str_replace("\n", " ", $content);
$content = nl2br($content);
echo $content;
數據庫中'course_content'的變量類型是什麼? – christopher 2013-03-07 17:27:54
這是一個長文本\t與utf8_general_ci 這可能是問題嗎? – MaxQ 2013-03-07 17:31:00
你有沒有試過把它轉換成普通的舊字符串,看看會發生什麼?由於PHP是鬆散類型的,因此有時很難跟蹤移動代碼的類型。 – christopher 2013-03-07 17:31:47