PHP 变量通过引用传递

& 符号 & 将添加到变量参数的开头,以便在 PHP 中通过引用传递变量。例如,function(&$a),其中 global 和 function 的变量目标都是成为全局值,因为它们是使用相同的引用概念定义的。

每当全局变量发生变化时,函数内部的变量也会发生变化,反之亦然。通过引用传递的语法是:

function FunctionName(&$Parameter){
//
}

其中 FunctionName 是函数的名称,Parameter 是一个将通过引用传递的变量。这是一个在 PHP 中通过引用传递的简单示例。

<?php
function Show_Number(&$Demo){
    $Demo++;
}
$Demo=7;
echo "Value of Demo variable before the function call :: ";
echo $Demo;
echo "<br>";
echo "Value of Demo variable after the function call :: ";
Show_Number($Demo);
echo $Demo;
?>

上面的代码在函数 Show_Number 中通过引用传递变量 Demo。见输出:

Value of Demo variable before the function call :: 7
Value of Demo variable after the function call :: 8

让我们尝试另一个示例,以使用和不使用 & 符号通过引用传递。参见示例:

<?php
// Assigning the new value to some $Demo1 variable and then printing it
echo "PHP pass by reference concept :: ";
echo "<hr>";
function PrintDemo1( &$Demo1 ) {
    $Demo1 = "New Value \n";
    // Print $Demo1 variable
    print( $Demo1 );
    echo "<br>";
}
// Drivers code
$Demo1 = "Old Value \n";
PrintDemo1( $Demo1 );
print( $Demo1 );
echo "<br><br><br>";


echo "PHP pass by reference concept but exempted ampersand symbol :: ";
echo "<hr>";
function PrintDemo2( $Demo2 ) {
    $Demo2 = "New Value \n";
    // Print $Demo2 variable
    print( $Demo2 );
    echo "<br>";
}
// Drivers code
$Demo2 = "Old Value \n";
PrintDemo2( $Demo2 );
print( $Demo2 );
echo "<br>";

?>

上面的代码创建了两个用于更改变量值的函数。当变量通过与符号&的引用传递时,该函数被同时调用并更改变量的值。

类似地,当通过不带 & 符号的引用传递时,它需要调用函数来更改变量的值。见输出:

PHP pass by reference concept ::
New Value
New Value


PHP pass by reference concept but exempted ampersand symbol ::
New Value
Old Value
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小柴没吃饱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值