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 アドレスであるかどうかを検出しています:

例

<?php
$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 アドレスではありません");
}

試してみる »

URL を検出 - QUERY_STRING(クエリ文字列)を含む必要があります

以下の例では、filter_var() 関数を使用して、$url にクエリ文字列が含まれているかどうかを検出しています:

例

<?php
$url = "http://www.example.com";

if (!filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED) === false) {
    echo("$url" は有効な URL です");
} else {
    echo("$url" は有効な URL ではありません");
}
?>

試してみる »

ASCII 値が 127 より大きい文字を除去する

以下の例では、filter_var() 関数を使用して、文字列内の ASCII 値が 127 より大きい文字を除去します。同様に、HTML タグも除去できます:

例

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

$newstr = filter_var($str, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
echo $newstr;
?>

試してみる »

PHP フィルタリファレンスマニュアル

また、当サイトのPHP フィルタリファレンスマニュアルにアクセスして、フィルタの具体的な応用を確認できます。

リファレンスマニュアルには、フィルタパラメータの簡単な説明と使用例が含まれています!

その他の拡張