首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP Textarea 提交 MySQL 出現多餘空格/換行根因與徹底解決方案

     編輯:PHP 綜合知識

現象重現

前端 `` (無縮進!)

  • 前端顯示:`echo nl2br(htmlspecialchars($content));`
  • 進階處理:統一換行符

    function normalize_linebreaks($text) {
        return str_replace(["\r\n", "\r"], "\n", $text);
    }
    
    // 存儲時統一為 \n
    $content = normalize_linebreaks(trim($_POST['content']));

    常見誤區

    • ❌ 用 `str_replace("\n", "", $content)` 移除換行 → 內容變單行
    • ❌ 用 `nl2br()` 後再入庫 → 存入 HTML 標籤,編輯器顯示亂碼
    • ❌ 依賴 `magic_quotes_gpc` (已棄用移除)

    核心原則:模板不縮進 textarea 內容、入庫 trim、讀出 htmlspecialchars、顯示 nl2br,四步走徹底解決空格換行困擾。

    1. 上一篇文章:
    2. 下一篇文章:
    Copyright © 程式碼之家 All Rights Reserved