関数で処理を行うのに必要なデータを、関数を呼び出す側からもらうためには引数を指定します。その引数を「仮引数」と呼びます。仮引数は実際のデータがあるのではなく、あると仮定して処理を記述することができます。
一方、関数を呼び出す側は仮引数が定義されている場合は、仮引数に応じたデータを渡す必要があります。そのデータを「実引数」と呼びます。実引数は処理してもらいたい実際のデータを指定します。
関数を定義するときには引数を指定しないか、指定するかを決めることができます。また、指定する場合、複数指定することができます。複数指定するときはカンマで区切って指定します。これから、引数を指定するいくつかのパターンを見てみましょう。
関数を定義するときに、関数を呼び出す側からデータをもらう必要のない場合は、仮引数リストは指定しません。
○ ファイル
次のようにファイルを作成してください。
ファイルの種類 | PHP ファイル |
---|---|
ファイル名 | functiontest1.php |
○ プログラム
次のようにプログラムを入力してください。
○ フローチャート
○ 実行結果
○ 解説
2~8行目で関数を定義しています。この関数は呼び出されると、変数$messageに表示したいメッセージを格納し、格納したデータを表示します。PHPでは、functionなどで指定されているものは呼び出されたら実行します。そのため、2~8行目は呼び出されるまで実行しません。
11行目から通常の処理が記述されているので、その行から実行されます。15行目ではshowData関数を呼び出しています。showData関数は仮引数が指定されていないので、呼び出す側でも実引数を指定しません。指定してもshowData関数で使用されません。
関数の定義で1つ仮引数を指定する方法と、それを呼び出す方法を確認しましょう。
ファイルの種類 | PHP ファイル |
---|---|
ファイル名 | functiontest2.php |
○ プログラム
次のようにプログラムを入力してください。
○ フローチャート
○ 実行結果
○ 解説
2~5行目で関数を定義しています。この関数は仮引数を一つ用意しています。変数$messageが用意されているので、この変数に文字列を受け取る前提で処理が行われます。4行目で渡された文字列を表示しています。8行目から通常のプログラムが記述されています。「functiontest1.php」と比べると、今回は関数外で変数$dataに表示したいメッセージを格納しています。15行目でshowData関数を呼び出していますが、その時に変数$dataを実引数に指定しています。今回は実引数を指定しないとエラーになります。
関数の定義で複数仮引数を指定する方法と、それを呼び出す方法を確認しましょう。今回は2つの引数を扱います。
ファイルの種類 | PHP ファイル |
---|---|
ファイル名 | functiontest3.php |
○ プログラム
次のようにプログラムを入力してください。
○ フローチャート
○ 実行結果
○ 解説
2~8行目で関数を定義しています。この関数は仮引数を二つ用意しています。文字列と整数値を受け取ります。4行目から受け取った整数値分だけ繰り返して、受け取った文字列を表示します。今回はshowData関数の外でで表示したい文字列と、繰り返したい回数を準備しています。showData関数を呼び出す時に表示したいデータと、表示する回数を渡しています。この二つを渡さないとエラーになります。