ホームページ  >  記事  >  バックエンド開発  >  PHP関数のパラメータの受け渡し方法とは何ですか?

PHP関数のパラメータの受け渡し方法とは何ですか?

WBOY
WBOYオリジナル
2024-04-10 11:06:021186ブラウズ

PHP パラメータを渡すには 2 つの方法があります。値による呼び出し (パラメータは値のコピーとして渡され、関数内での変更は元の変数には影響しません) と参照による渡し (パラメータのアドレスが渡されます) 、関数内の変更は元の変数に影響します)、必要に応じて、元の変数を変更するときに参照渡しを使用します。たとえば、ショッピング カートの合計価格を計算する場合、正しく計算するには参照渡しが必要です。

PHP 函数的参数传递方式是什么?

PHP 関数のパラメータ受け渡し方法

PHP でのパラメータ受け渡しには主に 2 つの方法があります:

1. 値渡し**

このメソッドでは、パラメータは値のコピーとして関数に渡されます。関数内でパラメーター値が変更されても、元の変数の値は影響を受けません。

function double($number) {
  $number *= 2;
  return $number;
}

$num = 10;
$result = double($num);
echo $num; // 输出: 10
echo $result; // 输出: 20

2. 参照渡し **

参照渡しでは、値の代わりにパラメータのアドレスが関数に渡されます。これは、関数内でパラメーター値が変更されると、元の変数の値も影響を受けることを意味します。

function &triple(&$number) {
  $number *= 3;
  return $number;
}

$num = 10;
$result = &triple($num);
echo $result; // 输出: 30
echo $num; // 输出: 30

実践例

ショッピング カート関数の実装

ショッピング カート内のすべての商品の合計価格を計算する関数が必要です。アイテムのリストは配列に保存され、各アイテムには価格が付いています。

$cart = [
  ['product' => 'Apple', 'price' => 1.20],
  ['product' => 'Orange', 'price' => 0.80]
];

function get_total_price($cart) {
  $total = 0;
  foreach ($cart as &$item) {
    $total += $item['price'];
  }
  return $total;
}

$total_price = get_total_price($cart);

上記の例では、get_total_price 関数の $cart パラメーターは参照によって渡されます。この関数が $cart 内の各アイテムの価格を変更する (合計価格に追加する) ため、これが必要です。値によって呼び出された場合、これらの変更は、関数に渡される元のショッピング カート配列には反映されません。

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

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