検証フィルタ

検証用のフィルタの一覧
ID 名前 オプション フラグ 説明
FILTER_VALIDATE_BOOLEAN, FILTER_VALIDATE_BOOL "boolean" default FILTER_NULL_ON_FAILURE

"1"、"true"、"on" および "yes" の場合に true、 それ以外の場合に false を返します。

FILTER_NULL_ON_FAILURE が設定されている場合は、 false が返されるのは "0"、"false"、"off"、"no" および "" の場合のみとなります。 boolean 以外の値については null を返します。

文字列の値については、 比較する前に先頭および末尾にあるホワイトスペースが取り除かれます。 取り除くために、trim 関数を使います。

FILTER_VALIDATE_DOMAIN "validate_domain" default FILTER_FLAG_HOSTNAME, FILTER_NULL_ON_FAILURE

ドメイン名ラベルの長さが妥当であるかを検証します。

ドメイン名が RFC 1034, RFC 1035, RFC 952, RFC 1123, RFC 2732, RFC 2181, RFC 1123 に照らして正しいかを検証します。 オプションのフラグ FILTER_FLAG_HOSTNAME を使うと、 ホスト名 (アルファベットか数字で始まり、 アルファベットか数字、もしくはハイフンのみが 含まれている必要があります) も追加で検証できます。

FILTER_VALIDATE_EMAIL "validate_email" default FILTER_FLAG_EMAIL_UNICODE, FILTER_NULL_ON_FAILURE

値が妥当な e-mail アドレスであるかどうかを検証します。

この検証は、e-mail アドレスが » RFC 822addr-spec 形式 に沿ったものであるかどうかを確かめます。 ただし、コメント、空白の折り返し (whitespace folding) および ドットなしドメイン名 (dotless domain name) には対応していません。

FILTER_VALIDATE_FLOAT "float" default, decimal, min_range, max_range FILTER_FLAG_ALLOW_THOUSAND, FILTER_NULL_ON_FAILURE

値が float であるかどうかを検証し、オプションで指定された範囲にあるかを調べます。成功した場合は値を float に変換します。

文字列の値については、 比較する前に先頭および末尾にあるホワイトスペースが取り除かれます。 取り除くために、trim 関数を使います。

FILTER_VALIDATE_INT "int" default, min_range, max_range FILTER_FLAG_ALLOW_OCTAL, FILTER_FLAG_ALLOW_HEX, FILTER_NULL_ON_FAILURE

値が整数であるかどうか、オプションで指定した範囲内にあるかどうかを検証し、成功した場合は整数に変換します。

文字列の値については、 比較する前に先頭および末尾にあるホワイトスペースが取り除かれます。 取り除くために、trim 関数を使います。

FILTER_VALIDATE_IP "validate_ip" default FILTER_FLAG_IPV4, FILTER_FLAG_IPV6, FILTER_FLAG_NO_PRIV_RANGE, FILTER_FLAG_NO_RES_RANGE, FILTER_FLAG_GLOBAL_RANGE, FILTER_NULL_ON_FAILURE 値が IP アドレスであるかどうかを検証します。 オプションで IPv4 あるいは IPv6 のみの指定、 プライベートアドレスや予約済みアドレスではないことの指定もできます。
FILTER_VALIDATE_MAC "validate_mac_address" default FILTER_NULL_ON_FAILURE 値が MAC アドレスであるかどうかを検証します。
FILTER_VALIDATE_REGEXP "validate_regexp" default, regexp FILTER_NULL_ON_FAILURE 値が、Perl 互換の 正規表現 regexp に一致するかどうかを検証します。
FILTER_VALIDATE_URL "validate_url" default FILTER_FLAG_SCHEME_REQUIRED, FILTER_FLAG_HOST_REQUIRED, FILTER_FLAG_PATH_REQUIRED, FILTER_FLAG_QUERY_REQUIRED, FILTER_NULL_ON_FAILURE 値が URL 形式である (» https://datatracker.ietf.org/doc/html/rfc2396 に準拠している) かどうか、 オプションで、必須コンポーネントが含まれているかどうかを検証します。 妥当な URL が、HTTP プロトコル http:// を指定しているとは限りません。 つまり、その URL が期待通りのプロトコル (ssh://mailto: など) を使っているかどうか、さらなる検証が必要だということです。 この関数は、ASCII の URL のみを正しいとみなすことに注意しましょう。 国際化ドメイン名 (非 ASCII 文字を含むもの) は失敗します。

注意:

オプションに default を設定すると、値が検証されなかったときに default の値を使います。

変更履歴

バージョン 説明
8.0.0 FILTER_FLAG_SCHEME_REQUIRED および、 FILTER_VALIDATE_URL フィルタのための FILTER_FLAG_HOST_REQUIRED フラグは削除されました。 schemehost は (かつてもそうでしたが) 常に必須になっています。
8.0.0 FILTER_VALIDATE_BOOLEAN のエイリアスとして FILTER_VALIDATE_BOOL が追加されました。 FILTER_VALIDATE_BOOL を使う方が好ましいです。
7.4.0 FILTER_VALIDATE_FLOAT 向けに min_rangemax_range オプションが追加されました。
7.0.0 FILTER_FLAG_HOSTNAMEFILTER_VALIDATE_DOMAIN が追加されました。