関連記事
引数、戻り値がない場合とは?
この記事の動画版はこちら(画像クリックでYoutubeに飛びます)
前回、「引数」と「戻り値」についての説明をしました。
もしまだ見ていなければ以下のよりご確認ください。
関数とは、一連の処理を行ってくれる「機能部品」
引数とは、関数に渡す「材料」
戻り値とは、関数から受け取る「結果」
ということでしたね。
また、前回の記事の中で「引数・戻り値は無しでもOK」という説明をしました。
引数や戻り値が無い場合とはどういうことか?というイメージが、前回の説明だけだと分かりづらかったため、今回はその部分を補足説明していきたいと思います。
引数、戻り値が無い場合とは?
例えば「おつかい」をしてくれる関数があったとします。
この関数は、「買い物リスト」を渡すと、リストの内容通りに買い物をし、買ってきたものを依頼元に渡してくれます。
この場合は、以下のようになりますね。
引数:買い物リスト
戻り値:買ってきたもの
しかし、例えば、毎週決まった日用品の買い出しに行く場合はどうでしょうか?
この場合、毎回買うものが同じなので、特に買い物リストを渡す必要はありません。
また、買ってきた後もわざわざ依頼元に渡さずに、倉庫など所定の場所にしまっておいてくれれば良いという場合もありますね。
こういう場合が「引数無し」や「戻り値無し」といったパターンになります。
呼び出し元からは、関数を実行するタイミングを指示するだけでOKということですね。
実際の例
例えばPHPの標準関数の「time」などは引数が無い関数です。
time関数は実行すると現在の時刻を返してくれますが、この処理には特に引数は必要ありません。
逆に、「echo」などは戻り値が無い関数です。
echoは指定したデータを画面に表示してくれる関数ですが、画面に表示して終わりなので、特に呼び出し元には何も返す必要がありません。
なお、戻り値に関しては、大抵の場合は処理結果として何かデータを返さないとしても、処理が「成功」したのか、「失敗」したのかという結果は報告するようになっていることが多いので、戻り値が無いというのは稀なケースになります。
このように、関数によっては引数や戻り値が無いケースもあるということを覚えておきましょう!