PHPのfilter_has_var()関数とは?使い方とサンプルコードを解説
PHPの filter_has_var() 関数は、指定した種類(タイプ)の中に、特定の変数が存在するかどうかをチェックするために使用される関数です。フォーム送信やURLパラメータの受け取りなどで、変数が実際に存在するかを確認したい場合に便利です。
構文
filter_has_var(type, var)
パラメータ
type − チェック対象となる入力の種類を指定します。以下の5種類から選択できます。
- INPUT_GET
- INPUT_POST
- INPUT_COOKIE
- INPUT_SERVER
- INPUT_ENV
var − 存在を確認したい変数の名前を文字列で指定します。
戻り値
filter_has_var() 関数は、変数が存在する場合は true を返し、存在しない場合は false を返します。
使用例
次の例では、GETリクエスト経由で渡された入力変数「email」の存在を手軽にチェックしています。入力の種類として INPUT_GET を使用しています。
<?php
if (!filter_has_var(INPUT_GET, "email")) {
echo("Email isn't there!");
} else {
echo("Email is there!");
}
?>
このコードでは、まず filter_has_var(INPUT_GET, "email") の結果を否定演算子「!」で反転させて判定しています。GETパラメータに「email」が存在しなければ if 文の中が実行され、「Email isn't there!」と表示されます。逆に存在すれば else 側の処理が行われます。
出力結果
上記のコードを実行した場合の出力は次のとおりです。
Email isn't there!
この例ではURLに email パラメータが付与されていない状態でアクセスしているため、「email」という変数は存在せず、このような結果になります。
まとめ
filter_has_var() 関数を使うことで、GET・POST・COOKIE・SERVER・ENV の各入力元に対して、変数の有無を簡単かつ安全に確認できます。ユーザー入力を扱う際には、いきなり値を読み込む前に存在チェックを行うことで、未定義変数によるエラーを防ぎ、より堅牢なPHPアプリケーションを作成することができます。
-
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
-
PHPのlcg_value()関数とは?乱数生成の基本と使い方を解説
lcg_value()関数の定義と使い方lcg_value()関数は、0から1までの範囲でランダムな数値(浮動小数点数)を生成するPHP組み込み関数です。「LCG」とは「線形合同法(Linear Congruential Generator)」の略称です。この手法は、不連続な区分線形方程式を用いて擬似乱数列を計算するアルゴリズムで、擬似乱数生成アルゴリズムの中でも最も古くから知られているものの一つです。構文lcg_value ( void ) : floatパラメータこの関数は引数を受け取りません。戻り値lcg_value()関数は、0.0以上1.0以下の範囲にある擬似乱数のfloat値を返し