戻り値

 関数で処理した結果を、関数を呼び出す側に渡すためには戻り値を指定します。関数の定義内でデータを呼び出し側に戻すには次のように指定します。

戻り値指定の書式
retrun ;

 これから戻り値を指定しないパターンと指定するパターンを見てみましょう。

■ 戻り値を指定しない

 戻り値を指定しない場合はreturnを省略するか、returnのみ記述します。

○ ファイル

 次のようにファイルを作成してください。

ファイルの種類 PHP ファイル
ファイル名 returntest1.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. <?php
  2. //戻り値を返さない関数
  3. function add($num1, $num2){
  4.  print("合計:" . ($num1 + $num2));
  5. }
  6. //データの準備
  7. $data1 = 20;
  8. $data2 = 30;
  9. //文字化け対策
  10. header("Content-Type: text/html; charset=utf-8");
  11. //関数の呼び出し
  12. add($data1, $data2);

○ フローチャート

○ 実行結果

実行結果
実行結果

○ 解説

 3~5行目で関数を定義しています。この関数は仮引数を二つ用意しています。整数値を受け取ります。そして、戻り値はありません。2つの整数を加算し、表示して呼び出し元に戻ります。

 今回はadd関数の外で加算したい数値を準備しています。add関数を呼び出す時に用意した二つの入力データを渡しています。今回は、計算と表示をadd関数が担当しています。

■ 戻り値を指定する

 戻り値を一つ指定することができます。戻り値を指定する場合はreturn文を使って、戻したいデータを指定します。

○ ファイル

 次のようにファイルを作成してください。

ファイルの種類 PHP ファイル
ファイル名 returntest2.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. <?php
  2. //戻り値を返す関数
  3. function add($num1, $num2){
  4.  return $num1 + $num2;
  5. }
  6. //データの準備
  7. $data1 = 40;
  8. $data2 = 60;
  9. //文字化け対策
  10. header("Content-Type: text/html; charset=utf-8");
  11. //関数の呼び出し
  12. $answer = add($data1, $data2);
  13. //処理結果を表示
  14. print('合計:' . $answer);

○ フローチャート

○ 実行結果

実行結果
実行結果

○ 解説

 3~5行目で関数を定義しています。この関数は仮引数を二つ用意しています。整数値を受け取ります。2つの整数を加算し、呼び出し元にその結果を返します。

 今回はadd関数の外で加算したい数値を準備しています。add関数を呼び出す時に準備した二つの入力データを渡し、処理結果を受け取っています。今回は、計算をadd関数が、計算結果の表示を通常の処理が担当しています。

前へ   次へ