今天在修改网站的网银支付系统时,发现了这种方法。以前写程序时,在php自定义函数里调用全局变量一般都是在函数开头加上global声明一下全
局变量,然后才在函数里使用,但这里提到的这种方法,却不用那么麻烦,只需要在一个公用函数里声明一下变量,那么就可以在任何地方调用这个变量的值。
掌握这种方法很简单,只需要巧用”&”符号。
这里用一个简单的例子说明下”&”的妙用
01 | <?php |
02 |
$a = 'c';
|
03 |
$b = &$a; //表示$b 和 $a 引用了同一个变量
|
04 |
$a = 'abc'; //这里重置了$a
|
05 |
echo $b; //将输出abc
|
06 |
unset($a); //取消引用
|
07 |
echo $b; //这里仍输出 abc
|
08 |
$a = 'abcd';
|
09 |
echo $b; //因为已经取消引用 这里仍输出abc
|
10 | ?> |
同样的原理,我们可以用在php自定义函数里调用全局变量的时候,例如:
01 | <?php |
02 | //先定义一个公用函数 |
03 |
function setValue(&$a)
|
04 | { |
05 |
$a = '123456';
|
06 | } |
07 | //执行公用函数,使函数里的变量得到赋值 |
08 |
setValue($a1);
|
09 |
10 | //自定义函数,注意:这里没用global声明 |
11 |
function getValue($a)
|
12 | { |
13 |
echo $a;
|
14 | } |
15 | //执行自定义函数,将输出123456 |
16 |
getValue($a1);
|
17 | ?> |
在调用多个变量时,只需要在前面的公用函数里预先声明并赋值,都可以在后面进行调用;如果两个函数不在一个页面里,同样可以采用include_once等引用包含了公用函数的页面进行调用
PHP变量引用技巧
本文介绍了一种PHP中利用变量引用简化全局变量使用的技巧。通过&符号创建变量引用,可以在不使用global关键字的情况下,在函数内外共享变量值。文章通过实例展示了如何在自定义函数间传递和使用全局变量。

被折叠的 条评论
为什么被折叠?



