PHP 的引用允许用两个变量来指向同一个内容。意思是,当这样做时:
<?php $a =& $b; ?>
$a
$b
注意: $a 和 $b 在这里是完全相同的,这并不是 $a 指向了 $b 或者相反,而是 $a 和 $b 指向了同一个地方。
注意: 如果具有引用的数组被拷贝,其值不会解除引用。对于数组传值给函数也是如此。
同样的语法可以用在函数中,它返回引用,以及用在 new 运算符中(PHP 4.0.4 以及以后版本):
<?php $bar =& new fooclass(); $foo =& find_var($bar); ?>
注意: 不用 & 运算符导致对象生成了一个拷贝。如果在类中用 $this,它将作用于该类当前的实例。没有用 & 的赋值将拷贝这个实例(例如对象)并且 $this 将作用于这个拷贝上,这并不总是想要的结果。由于性能和内存消耗的问题,通常只想工作在一个实例上面。 尽管可以用 @ 运算符来抑制构造函数中的任何错误信息,例如用 @new,但用 &new 语句时这不起效果。这是 Zend 引擎的一个限制并且会导致一个解析错误。
注意: 不用 & 运算符导致对象生成了一个拷贝。如果在类中用 $this,它将作用于该类当前的实例。没有用 & 的赋值将拷贝这个实例(例如对象)并且 $this 将作用于这个拷贝上,这并不总是想要的结果。由于性能和内存消耗的问题,通常只想工作在一个实例上面。
尽管可以用 @ 运算符来抑制构造函数中的任何错误信息,例如用 @new,但用 &new 语句时这不起效果。这是 Zend 引擎的一个限制并且会导致一个解析错误。
本文适合广大网页设计爱好者阅览,欢迎转摘,转摘请注明作者和出处!作者:苏州网站建设
网站:阳光建站网 本公司专业提供:苏州网页设计,苏州网络公司,苏州网站制作,苏州网站推广,苏州网站设计
服务电话:0512-68551897 65508660 65508661 传真:0512-68187689
24小时服务电话 13776081868 13776082868
本公司专业提供:苏州网站建设,苏州网页设计,苏州网络公司,苏州网站制作,苏州网站推广苏州网站设计, 苏州网站建设专家