Home > Article > Backend Development > Parameter passing guide in PHP function calls
In PHP function calls, parameter passing includes passing by value, passing by reference and default parameters. Passing by value copies the variable value, passing by reference modifies the original variable, and default parameters provide predefined values. Practical examples demonstrate pass-by-value calculation of taxes, pass-by-reference exchange variables, and post creation with default parameters.
Guidelines for passing parameters in PHP function calls
When writing PHP functions, it is crucial to understand how to pass parameters. This article will delve into the parameter passing mechanism in PHP function calls and provide practical examples to help you master this key concept.
How to pass parameters
In PHP, parameters can be passed in many ways:
Pass by value
The following code demonstrates pass by value:
function sum($a, $b) { $a += $b; } $x = 10; $y = 20; sum($x, $y); echo $x; // 输出:10
In this example, x
and y
variables are passed by value to the sum()
function. Operations within the function do not modify the original variable, so echo $x
outputs 10, not 30.
Pass by reference
Pass by reference allows a function to modify the original variable. To pass variables by reference, use the &
symbol before the function parameter:
function sumByReference(&$a, &$b) { $a += $b; } $x = 10; $y = 20; sumByReference($x, $y); echo $x; // 输出:30
In this example, the x
and y
variables are by reference Passed to the sumByReference()
function. The operations within the function modify the original variable, so echo $x
outputs 30.
Default parameters
Default parameters allow you to specify predefined values for function parameters. The following code demonstrates how to use default parameters:
function greet($name = "World") { echo "Hello, $name!"; } greet(); // 输出:Hello, World! greet("John"); // 输出:Hello, John!
In this example, the name
parameter is assigned a default value of "World". If no parameter value is explicitly provided at call time, the default value will be used.
Practical case
function calculateTax($amount, $rate) { return $amount * $rate; } $amount = 100; $rate = 0.08; $tax = calculateTax($amount, $rate); echo $tax; // 输出:8
In this case, amount
and rate
The variable is passed by value to the calculateTax()
function, which returns the amount of tax payable.
function swap(&$a, &$b) { $temp = $a; $a = $b; $b = $temp; } $a = 10; $b = 20; swap($a, $b); echo $a; // 输出:20 echo $b; // 输出:10
In this case, the a
and b
variables are passed by reference to the swap()
function , the function exchanges the values of variables.
function createPost($title, $content = "") { // 创建新的帖子... } createPost("My Post"); // 使用默认的内容值 "" createPost("My Post", "This is the content."); // 覆盖默认值
In this case, the second content
parameter has a default value of "". This parameter can be omitted when calling the function, or a custom value can be provided to override the default value.
The above is the detailed content of Parameter passing guide in PHP function calls. For more information, please follow other related articles on the PHP Chinese website!