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

PHP 字串清洗:移除 HTML 標籤與空白字元的實用函式

     編輯:PHP 綜合知識

需求場景

輸出純文字摘要、API 回傳資料、儲存用戶輸入前,常需移除 HTML 標籤、實體編碼、多餘空白等「雜質」。

核心清洗函式

function clean_string($string) {
    $string = trim($string);                           // 移除首尾空白
    $string = strip_tags($string);                     // 剝離 HTML/PHP 標籤
    $string = htmlspecialchars($string, ENT_QUOTES, 'UTF-8'); // 轉義特殊字元
    $string = str_replace("\n", '', $string);          // 移除換行符
    $string = trim($string);                           // 再次修剪
    return $string;
}

// 使用範例
echo clean_string('內 容 <br> <html> asdfeiuonsdfje');
// 輸出:內 容 asdfeiuonsdfje

深度空白處理(正則版)

針對連續空白、製表符、換行符的更徹底清理:

$str = " This line containstliberal rn use of whitespace.nn";

// 1. 移除首尾空白
$str = trim($str);

// 2. 合併連續空白字元為單一空格
$str = preg_replace('/\s+/', ' ', $str);

// 3. 將控制字元替換為空格
$str = preg_replace('/[\n\r\t]/', ' ', $str);

echo "<pre>{$str}</pre>";
// 輸出:This line contains liberal use of whitespace.

關鍵函式對照表

函式用途
trim()移除字串首尾空白字元
strip_tags()剝離 HTML、XML 和 PHP 標籤
htmlspecialchars()將特殊字元轉為 HTML 實體
preg_replace()正則替換,處理複雜空白模式

最佳實踐建議

  • 輸入端:儲存前用 strip_tags + htmlspecialchars 防 XSS
  • 輸出端:根據上下文(HTML、JS、URL)選擇對應轉義函式
  • 資料庫:儲存原始資料,輸出時再處理,保留彈性
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved