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

PHP 高級過濾器實戰:數據驗證與淨化進階技巧

     編輯:PHP 入門

PHP 高級過濾器實戰:數據驗證與淨化進階技巧

filter_var() 結合過濾器常量與選項/標誌,提供強大的數據驗證與淨化能力。本文通過實戰案例演示進階用法。

1. 範圍驗證:整數是否在區間內

$int = 122;
$min = 1; $max = 200;
if (filter_var($int, FILTER_VALIDATE_INT, 
    ['options' => ['min_range' => $min, 'max_range' => $max]]) === false) {
    echo "變量值不在合法範圍內";
} else {
    echo "變量值在合法範圍內";
}

2. IPv6 地址驗證

$ip = "2001:0db8:85a3:08d3:1319:8a2e:0370:7334";
if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) !== false) {
    echo "$ip 是 IPv6 地址";
} else {
    echo "$ip 不是 IPv6 地址";
}

3. URL 必須包含查詢字符串

$url = "https://www.example.com";
if (filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED) !== false) {
    echo "合法 URL";
} else {
    echo "非法 URL(缺少查詢字符串)";
}

4. 移除高 ASCII 與 HTML 標籤

$str = "

Hello WorldÆØÅ!

"; $newstr = filter_var($str, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH); echo $newstr; // Hello World!

核心概念:Validating vs Sanitizing

選項與標誌機制

選項放入 'options' 關聯陣列,標誌直接作為第三參數傳遞。不同過濾器支援不同選項/標誌,詳見 PHP 過濾器參考手冊。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
類型用途規則返回值
Validating驗證格式(Email、URL、IP 等)嚴格格式規則成功返回預期類型,失敗返回 false
Sanitizing清理字符(移除/編碼特殊字符)無格式規則始終返回字符串