検証

例1 filter_var でのメールアドレスの検証

<?php
$email_a = 'joe@example.com';
$email_b = 'bogus';

if (filter_var($email_a, FILTER_VALIDATE_EMAIL)) {
    echo "'$email_a' はメールアドレスとして有効です。\n";
}
if (filter_var($email_b, FILTER_VALIDATE_EMAIL)) {
    echo "'$email_b' はメールアドレスとして有効です。\n";
} else {
    echo "'$email_b' はメールアドレスとして無効です。\n";
}
?>

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

'joe@example.com' はメールアドレスとして有効です。
'bogus' はメールアドレスとして無効です。

例2 filter_var での IP アドレスの検証

<?php
$ip_a = '127.0.0.1';
$ip_b = '42.42';

if (filter_var($ip_a, FILTER_VALIDATE_IP)) {
    echo "'$ip_a' は IP アドレスとして有効です。";
}
if (filter_var($ip_b, FILTER_VALIDATE_IP)) {
    echo "'$ip_b' は IP アドレスとして有効です。";
}
?>

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

'127.0.0.1' は IP アドレスとして有効です。

例3 filter_var でのオプションの指定

<?php
$int_a = '1';
$int_b = '-1';
$int_c = '4';
$options = array(
    'options' => array(
        'min_range' => 0,
        'max_range' => 3,
    )
);
if (filter_var($int_a, FILTER_VALIDATE_INT, $options) !== FALSE) {
    echo "整数値 A '$int_a' は有効な値 (0 から 3 までの間) です。\n";
}
if (filter_var($int_b, FILTER_VALIDATE_INT, $options) !== FALSE) {
    echo "整数値 B '$int_b' は有効な値 (0 から 3 までの間) です。\n";
}
if (filter_var($int_c, FILTER_VALIDATE_INT, $options) !== FALSE) {
    echo "整数値 C '$int_c' は有効な値 (0 から 3 までの間) です。\n";
}

$options['options']['default'] = 1;
if (($int_c = filter_var($int_c, FILTER_VALIDATE_INT, $options)) !== FALSE) {
    echo "整数値 C '$int_c' は有効な値 (0 から 3 までの間) です。";
}
?>

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

整数値 A '1' は有効な値 (0 から 3 までの間) です。
整数値 C '1' は有効な値 (0 から 3 までの間) です。