PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのfilter_var()関数とは?使い方を徹底解説

filter_var()関数は、指定したフィルタを使って変数の値を検証・加工するためのPHP組み込み関数です。特にメールアドレスやURL、整数値などの入力値チェック(バリデーション)で広く利用されており、フォーム処理における必須の関数といえます。

構文

filter_var(variable, filter, options)

パラメータ

  • variable − 検証・フィルタリングの対象となる変数。

  • filter − 適用するフィルタのID。例えばメールアドレスの検証なら「FILTER_VALIDATE_EMAIL」などを指定します。

  • options − フィルタに渡す追加オプション(連想配列やフラグ)。省略可能です。

戻り値

filter_var()関数は、検証が成功した場合はフィルタリング済みのデータを返し、失敗した場合はfalseを返します。これにより、if文と組み合わせて簡単に入力値の妥当性を判定できます。

使用例:メールアドレスの検証

以下は、FILTER_VALIDATE_EMAILフィルタを使ってメールアドレスが有効かどうかを判定するサンプルコードです。

<?php
    $myEmail = "examplee@demo.com";
    if (filter_var($myEmail, FILTER_VALIDATE_EMAIL)) {
        echo("$myEmail = 有効なメールアドレスです");
    } else {
        echo("$myEmail = 無効なメールアドレスです");
    }
?>

出力結果

上記コードを実行すると、次のような出力になります。

examplee@demo.com = 有効なメールアドレスです

主なフィルタの一覧

filter_var()関数でよく使われるフィルタには以下のようなものがあります。

  • FILTER_VALIDATE_EMAIL − メールアドレスとして有効かどうかを検証します。

  • FILTER_VALIDATE_URL − URLとして有効かどうかを検証します。

  • FILTER_VALIDATE_INT − 整数として有効かどうかを検証します。

  • FILTER_VALIDATE_IP − IPアドレスとして有効かどうかを検証します。

  • FILTER_SANITIZE_EMAIL − メールアドレスに使用できない文字を取り除きます。

  • FILTER_SANITIZE_URL − URLに使用できない文字を取り除きます。

このように、filter_var()関数を活用することで、外部からの入力値を安全に検証でき、セキュリティの高いWebアプリケーション開発につながります。

  1. PHPのlog()関数とは?自然対数の計算方法と使い方を解説

    定義と使い方log() 関数は、数値の自然対数(natural logarithm)を計算します。対数とは、指数関数の逆演算のことです。たとえば 102=100 という関係は「log10100=2」と表せます。自然対数はオイラー数 e を底として計算され、PHP では定義済み定数 M_E によって e の値(2.7182818284590452354)が提供されています。具体例を挙げると、exp(4.60517018599)=100(つまり e4.60517018599=100)が成り立つため、loge100=4.60517018599 となります。PHP では、この自然対数(loge)を l

  2. PHPのfilter_id()関数の使い方とサンプルコード

    PHPのfilter_id()関数は、指定したフィルター名に対応するフィルターIDを取得するための関数です。データ検証やサニタイズを行う際に、フィルター名からIDを動的に取得したい場合に便利です。構文filter_id(filtername)パラメータfiltername − IDを取得したいフィルターの名前を指定します。戻り値filter_id()関数は、指定されたフィルターが存在する場合はそのフィルターID(整数値)を返します。フィルターが存在しない場合はFALSEを返します。使用例以下の例では、filter_list()関数で利用可能なすべてのフィルター名を取得し、それぞれに対応するフィ