PHPのparse_str()関数とは?使い方とサンプルコードをわかりやすく解説
PHPのparse_str()関数は、「name=value&name=value」といったURLクエリ形式で記述された文字列を解析し、その内容を変数や配列に格納するための関数です。この関数は戻り値を持ちません。
基本構文
parse_str(str, arr)
パラメータ
str:解析対象となる入力文字列。URLクエリ文字列と同じ形式で指定します。
arr:解析結果を格納する配列の名前。この引数を指定すると、現在のスコープ内の変数が上書きされることなく、指定した配列に結果が保存されます。
戻り値
parse_str()関数は値を返しません(void)。解析結果は、第2引数として渡した配列に格納されます。
使用例1:基本的な使い方
以下は、クエリ形式の文字列を配列に変換する基本的な例です。
<?php
parse_str("studentname=Jack&marks=95", $arr);
print_r($arr);
?>
出力結果
Array
(
[studentname] => Jack
[marks] => 95
)
使用例2:複数のキーと値を持つ文字列の解析
次に、複数の項目を含む文字列を解析する例を見てみましょう。
<?php
parse_str("studentname=Tom&studentmarks=95&studentsubject=Maths", $arr);
print_r($arr);
?>
出力結果
Array
(
[studentname] => Tom
[studentmarks] => 95
[studentsubject] => Maths
)
注意点:セキュリティと非推奨事項
第2引数を省略して呼び出した場合、PHP 7.2以降ではこの挙動が非推奨(E_DEPRECATED)となり、PHP 8.0以降では第2引数の指定が必須になっています。また、GETやPOSTなどユーザーからの入力を直接parse_str()に渡すと、意図しない変数の上書きが発生する危険性があります。必ず第2引数を指定し、入力値の検証を行うことが強く推奨されます。
-
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値を返し