天天看點

PHP 進階過濾器

檢測一個數字是否在一個範圍内

以下執行個體使用了 filter_var() 函數來檢測一個 INT 型的變量是否在 1 到 200 内:

執行個體

<?php

$int = 122;

$min = 1;

$max = 200;

if (filter_var($int,

FILTER_VALIDATE_INT, array("options" => array("min_range"=>$min, "max_range"=>$max)))

=== false) {

    echo("變量值不在合法範圍内");

} else {

    echo("變量值在合法範圍内");

}

?>

檢測 IPv6 位址

以下執行個體使用了 filter_var() 函數來檢測一個 $ip 變量是否是

IPv6 位址:

$ip = "2001:0db8:85a3:08d3:1319:8a2e:0370:7334";

if (!filter_var($ip,

FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) === false) {

echo("$ip 是一個 IPv6 位址");

echo("$ip 不是一個 IPv6 位址");

檢測 URL - 必須包含QUERY_STRING(查詢字元串)

以下執行個體使用了 filter_var() 函數來檢測 $url 是否包含查詢字元串:

$url = "http://www.runoob.com";

if (!filter_var($url,

FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED) === false) {

echo("$url 是一個合法的 URL");

    echo("$url 不是一個合法的 URL");

移除 ASCII 值大于 127 的字元

以下執行個體使用了 filter_var() 函數來移除字元串中 ASCII 值大于 127 的字元,同樣它也能移除 HTML 标簽:

$str = "<h1>Hello WorldÆØÅ!</h1>";

$newstr =

filter_var($str, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);

echo $newstr;

PHP 過濾器參考手冊

你也可以通過通路本站的

PHP 過濾器參考手冊 來檢視過濾器的具體應用。

參考手冊中包含了過濾器參數的簡要說明和使用例子!