[php]< ?php
  //******************************************************************
  //★関数群
    //================================================================
    //◆関数1 ・・・ 通常の引数を加算して引数の変数をリターン
    function func1($a){
      $a = $a + 10;
      return $a;
    }
    //================================================================
    //◆関数2 ・・・ 参照渡し引数を加算して引数の変数をリターン
    function func2(&$a){
      $a = $a + 10;
      return $a;
    }
    //================================================================
    //◆関数3 ・・・ 参照渡し引数を加算して引数とは別の変数をリターン
    function func3(&$a){
      $a = $a + 10;
      $d = 100;
      return $d;
    }
  //******************************************************************
  //★処理部分
    //================================================================
    //◆関数1 ・・・ 通常の引数を加算して引数の変数をリターン
    $b = 10;
    echo '関数処理前の$bは'.$b.'です。
‘;
    $c = func1($b);
    echo ‘関数処理後(func1)の$bは’.$b.’です。
‘;
    echo ‘関数処理後(func1)の$cは’.$c.’です。
‘;
    //================================================================
    //◆関数2 ・・・ 参照渡し引数を加算して引数の変数をリターン
    $b = 10;
    echo ‘関数処理前の$bは’.$b.’です。
‘;
    $c = func2($b);
    echo ‘関数処理後(func2)の$bは’.$b.’です。
‘;
    echo ‘関数処理後(func2)の$cは’.$c.’です。
‘;
    //================================================================
    //◆関数3 ・・・ 参照渡し引数を加算して引数とは別の変数をリターン
    $b = 10;
    echo ‘関数処理前の$bは’.$b.’です。
‘;
    $c = func3($b);
    echo ‘関数処理後(func3)の$bは’.$b.’です。
‘;
    echo ‘関数処理後(func3)の$cは’.$c.’です。
‘;
?>[/php]
★実行結果
 ◆関数1 ・・・ 通常の引数を加算して引数の変数をリターン
  関数処理前の$bは10です。
  関数処理後(func1)の$bは10です。
  関数処理後(func1)の$cは20です。
 ◆関数2 ・・・ 参照渡し引数を加算して引数の変数をリターン
  関数処理前の$bは10です。
  関数処理後(func2)の$bは20です。
  関数処理後(func2)の$cは20です。
 ◆関数3 ・・・ 参照渡し引数を加算して引数とは別の変数をリターン
  関数処理前の$bは10です。
  関数処理後(func3)の$bは20です。
  関数処理後(func3)の$cは100です。
★ちょっと見つけた面白そうな記事
 ・[PHPの基礎体力] 関数の値渡しと参照渡しどちらが速い?
 
  
  
  
  
コメント