php变量引用赋值一些知识

引用是PHP中比较特殊的一种类型,它实际是指向另外一个PHP变量,对它的修改会直接改
动实际指向的值,在PHP中通过 & 操作符产生一个引用变
量。

以下两例子结果都在一样的。删除或修改都会影响到另外一个变量的值。

$foo = 'Bob';              // 将 'Bob' 赋给 $foo
$bar = &$foo;              // 通过 $bar 引用 $foo
$bar = "My name is $bar";  // 修改 $bar 变量
echo $bar;
echo $foo;                 // $foo 的值也被修改

$foo = 'Bob';              // 将 'Bob' 赋给 $foo
$bar = &$foo;              // 通过 $bar 引用 $foo
$foo = "My name is $bar";  // 修改 $foo 变量
echo $bar,"\n";
echo $foo;                 // $foo 的值也被修改

删除引用时,无论是删除 b 或 b或 ba结果都没会影响到另一个变量。只是相当于删除一个名称,不会影响到变量本身。

$a = 0;
$b = &$a; 
unset($a); // unset $b
echo $b; //0 it's OK

当一个变量先后引用两个变量时,把第一次引用的变量,修改成第二次引用的变量。第一次引用没有关系,互相不会影响。

<?php
$a = "hihaha";
$b = &$a;
$c = "eita";
$b = &$c;
echo $b; // shows "hihaha"

函数的传址调用传址调用,执行完,相当于直接改变引用的变量。这里 b 传 递 给 函 数 的 其 实 是 b传递给函数的其实是 bb的变量的内容,通过在函数里改变 a 的 值   就 可 以 改 变 a的值 就可以改变 a b的值了

function test( &$a )
{
  $a += 10;
}
$b = 1;

test($b);

echo $b;//输出11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值