【PHP】関数(function)「戻り値を使って関数から値を返す」について【入門】 投稿者:Ka-Chan 投稿公開日:2021年4月3日 投稿カテゴリー:PHP 投稿コメント:0件のコメント PHPの全目次 PHP 関数の目次 関数の使い方 関数の定義と呼び出し 引数を使って関数に値を渡す 戻り値を使って関数から値を返す 戻り値を使って関数から値を返す 関数は呼び出す時に引数を使って値を渡すことが出来ますが、関数内で何らかの処理をした結果として今度は関数から値を呼び出し元に返すことが出来ます。例えば数値計算をするような関数であれば計算結果を呼び出し元に返したり、文字列の処理をするような関数であれば処理した結果を返すことが出来ます。関数から値を返すにはreturn文を使います。書式は次の通りです。 return 戻り値; 呼び出し元に返したい値を戻り値として指定します。戻り値には数値や文字列などの他に配列など全ての値を指定可能です。なおreturn文は関数ではないので戻り値の指定の時に括弧は不要です。戻り値が返された場合、関数を呼び出した「関数名(引数)」の評価が戻り値となります。戻り値を保存するには「変数 = 関数名(引数)」のように変数に対して格納して下さい。例えば次のように記述します。 function plus($num1, $num2){ $sum = $num1 + $num2; return $sum;}$sum = plus(10, 8);print ‘加算の結果は’.$sum.’です’;print ‘加算の結果は’.plus(7, 14).’です’; 上記ではいったん変数に戻り値を格納して使用している場合と、関数の呼び出しそのものを直接記述しています。なお関数の中でreturn文が実行されると戻り値を返すと共に関数内の処理をそこで終了します。つまりreturn文が実行されると処理は関数を呼び出した元に処理が移ります。次の例を見てください。 function plus($num1, $num2){ $sum = $num1 + $num2; return $sum; print ‘ここは処理されません’;}$sum = plus(10, 8); 関数内でreturn文が実行されると処理は呼び出し元に戻りますので「print ‘ここは処理されません’;」は決して実行されません。また次のようにreturn文を複数記述し条件に応じて戻り値を変更することも可能です。 function warizan($num1, $num2){ if ($num2 == 0){ return NULL; } return $num1 / $num2;}$result = warizan(10, 8); 上記では2番目の引数の値が0だった場合は「NULL」を返し、そうでない場合は1番目の引数を2番目の引数で除算した結果を返します。なお引数とは異なり戻り値として指定できる値は1つだけです。ただし配列も指定が可能なので配列を使うことで実質的に複数の値を返すことも可能です。 サンプルコード ▼Example-function4-1.php<!DOCTYPE html><html lang=“ja”><head><meta http-equiv=“Content-Type” content=“text/html;charset=UTF-8” /><title>PHPテスト</title></head><body><p>PHPのテストです。</p><p><?phpfunction plus($num1, $num2){ $sum = $num1 + $num2; return $sum;}$sum = plus(10, 8);print ’10 + 8の結果は’.$sum.‘です<br />’;print ‘7 + 14の結果は’.plus(7, 14).‘です’;?></p></body></html> 上記のファイルをwwwサーバのドキュメントルート以下に設置しブラウザからアクセスすると次のように表示されます。 タグ: PHP Please Share This Share this content Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window その他の記事を読む 前の投稿【PHP】関数(function)「引数を使って関数に値を渡す」について【入門】 次の投稿【PHP】クラス(class)「クラスとは?」について【入門】 おすすめ 【PHP】条件分岐「条件式が偽の時の処理(if..else)」について【入門】 2021年2月26日 【PHP】プログラムの基本事項「プログラムの記述」【入門】 2020年7月29日 【PHP】変数「色々な代入演算子(文字列連結など)」について【入門】 2020年8月4日 コメントを残す コメントをキャンセルコメントコメントする名前またはユーザー名を入力してください メールアドレスを入力してコメント Web サイトの URL を入力してください。(任意) 次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。