Php/docs/function.filter-var

提供:Dev Guides
< Php
移動先:案内検索

filter_var

(PHP 5 >= 5.2.0, PHP 7)

filter_var指定したフィルタでデータをフィルタリングする


説明

filter_var ( mixed $value [, int $filter = FILTER_DEFAULT [, array|int $options = 0 ]] ) : mixed

パラメータ

value

フィルタリングする値。値をフィルタリングする前に、 内部的に 文字列への変換 が行われることに注意しましょう。

filter

適用するフィルタの ID。フィルタの型 に、利用できるフィルタの一覧があります。

省略した場合は FILTER_DEFAULT を使います。これは FILTER_UNSAFE_RAW と同等です。 結果的に、デフォルトでは何もフィルタリングをしません。

options

オプションあるいはフラグの論理和の連想配列。 オプションを指定可能なフィルタの場合、この配列の "flags" フィールドにフラグを指定します。 "callback" フィルタの場合は、callable 型を渡さなければなりません。 コールバックは、フィルタリングする値を引数として受け取り、 処理後の値を返すようにしなければなりません。

<?php// オプションを許可するフィルタは、このような形式となります$options = array(    'options' => array(        'default' => 3, // フィルタが失敗した場合に返す値        // その他のオプションをここに書きます        'min_range' => 0    ),    'flags' => FILTER_FLAG_ALLOW_OCTAL,);$var = filter_var('0755', FILTER_VALIDATE_INT, $options);// フラグのみを許可するフィルタは、それを直接記述します$var = filter_var('oops', FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE);// フラグのみを許可するフィルタは、配列として渡すこともできます$var = filter_var('oops', FILTER_VALIDATE_BOOLEAN,                  array('flags' => FILTER_NULL_ON_FAILURE));// コールバック検証フィルタfunction foo($value){    // 期待する書式: Surname, GivenNames    if (strpos($value, ", ") === false) return false;    list($surname, $givennames) = explode(", ", $value, 2);    $empty = (empty($surname) || empty($givennames));    $notstrings = (!is_string($surname) || !is_string($givennames));    if ($empty || $notstrings) {        return false;    } else {        return $value;    }}$var = filter_var('Doe, Jane Sue', FILTER_CALLBACK, array('options' => 'foo'));?>


返り値

フィルタリングされたデータ、あるいは処理に失敗した場合に false を返します。


例1 filter_var() の例

<?phpvar_dump(filter_var('bob@example.com', FILTER_VALIDATE_EMAIL));var_dump(filter_var('http://example.com', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));?>

上の例の出力は以下となります。


string(15) "bob@example.com"
bool(false)

参考

  • filter_var_array() - 複数の変数を受け取り、オプションでそれらをフィルタリングする
  • filter_input() - 指定した名前の変数を外部から受け取り、オプションでそれをフィルタリングする
  • filter_input_array() - 外部から変数を受け取り、オプションでそれらをフィルタリングする
  • フィルタの型