ホームページ >バックエンド開発 >PHPチュートリアル >PHP関数でパラメータを値で渡す方法は?

PHP関数でパラメータを値で渡す方法は?

醉折花枝作酒筹
醉折花枝作酒筹オリジナル
2021-07-29 14:07:533676ブラウズ

前回の記事では、パラメータとは何か、関数の作成方法、仮パラメータと実パラメータについて学びました。必要に応じて、「php関数の仮パラメータと実パラメータとは何を意味するのですか?」も読んでください。 」 》。今回はパラメータについて詳しく見て、関数にパラメータを渡す際の値による受け渡しを紹介します。

関数にパラメーターを渡すには、値の受け渡し、参照の受け渡し、デフォルトのパラメーター、および可変長パラメーターの 4 つの方法があります。今回はパラメータを値で渡す方法を紹介します。

まず小さな例を見てみましょう。

<?php
  function swap($a, $b){
    echo &#39;函数内,交换前 $a = &#39;.$a.&#39;, $b = &#39;.$b.&#39;<br>&#39;;
    $temp = $a;
    $a = $b;
    $b = $temp;
    echo &#39;函数内,交换后 $a = &#39;.$a.&#39;, $b = &#39;.$b.&#39;<br>&#39;;
  }

  $x = 5;
  $y = 7;
  echo &#39;函数外,交换前 $x = &#39;.$x.&#39;, $y = &#39;.$y.&#39;<br>&#39;;
  swap($x, $y);
  echo &#39;函数外,交换后 $x = &#39;.$x.&#39;, $y = &#39;.$y;
?>

出力結果は

函数外,交换前 $x = 5, $y = 7
函数内,交换前 $a = 5, $b = 7
函数内,交换后 $a = 7, $b = 5
函数外,交换后 $x = 5, $y = 7

です。この例では、関数内では確かに値が交換されていますが、関数の外では値が変化していないことがわかります。

この小さな例を通して。パラメーターを値で渡すことについても一般的に理解しています。これについては、以下で詳しく紹介します。

値による受け渡しは、PHP の関数のデフォルトの値受け渡し方法であり、「コピー値の受け渡し 」とも呼ばれます。名前が示すように、値転送メソッドはパラメータの値をコピーし、それを関数の仮パラメータに転送します。したがって、関数内でパラメータの値を操作しても、関数外のパラメータには影響しません。したがって、関数でパラメータの値を変更したくない場合は、パラメータを値で渡すことができます。

上記の例と同様に、関数内では確かに値が交換されますが、関数の外では値は変わりません。したがって、関数を値で渡すことは、単に変数のコピーを渡すことであると言えます。したがって、関数が関数の外部パラメーターを操作できるようにしたい場合は、参照渡しを使用する必要があります。

あなたが欲しいphpの知識はここにあります→ →phpビデオチュートリアル

以上がPHP関数でパラメータを値で渡す方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。