array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ja', ), 'this' => array ( 0 => 'filter.examples.sanitization.php', 1 => '除去', ), 'up' => array ( 0 => 'filter.examples.php', 1 => '例', ), 'prev' => array ( 0 => 'filter.examples.validation.php', 1 => '検証', ), 'next' => array ( 0 => 'ref.filter.php', 1 => 'Filter 関数', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ja', 'path' => 'reference/filter/examples.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
例1 メールアドレスの検証、および不正な部分の除去
<?php
$a = 'joe@example.org';
$b = 'bogus - at - example dot org';
$c = '(bogus@example.org)';
$sanitized_a = filter_var($a, FILTER_SANITIZE_EMAIL);
if (filter_var($sanitized_a, FILTER_VALIDATE_EMAIL)) {
echo "処理済の (a) はメールアドレスとして有効です。\n";
}
$sanitized_b = filter_var($b, FILTER_SANITIZE_EMAIL);
if (filter_var($sanitized_b, FILTER_VALIDATE_EMAIL)) {
echo "処理済のメールアドレスは有効です。";
} else {
echo "処理済の (b) はメールアドレスとして無効です。\n";
}
$sanitized_c = filter_var($c, FILTER_SANITIZE_EMAIL);
if (filter_var($sanitized_c, FILTER_VALIDATE_EMAIL)) {
echo "処理済の (c) はメールアドレスとして有効です。\n";
echo "処理前: $c\n";
echo "処理後: $sanitized_c\n";
}
?>
上の例の出力は以下となります。
処理済の (a) はメールアドレスとして有効です。 処理済の (b) はメールアドレスとして無効です。 処理済の (c) はメールアドレスとして有効です。 処理前: (bogus@example.org) 処理後: bogus@example.org
例2 デフォルトのフィルタの設定
filter.default = full_special_chars
filter.default_flags = 0