-3
我发现了这一点,但弄得完全是什么,这些运营商(= and =&)
$instance = new SimpleClass();
$assigned = $instance;
$reference =& $instance;
之间的区别这个正确任何人能解释吗?
我发现了这一点,但弄得完全是什么,这些运营商(= and =&)
$instance = new SimpleClass();
$assigned = $instance;
$reference =& $instance;
之间的区别这个正确任何人能解释吗?
你可以理解为以下几点:
$instance = "5";
$assigned = $instance; // stores "5"
$reference =& $instance; // Point to the object $instance stores "5"
$instance = null; // $instance and $reference become null
这意味着
$实例具有值 “5” 将是空
$分配的值为“5 “不会为空,因为它与”5“一起存储。
$ reference的值为“5”,因为它指向$实例
<?php
$a = 1;
$b = $a;
$b = 2;
echo "a:{$a}/b: {$b}<br />";
// returns 1/2
$a = 1;
$b =& $a;
$b = 2;
echo "a:{$a}/b: {$b}<br />";
// returns 2/2
?>
Above example clarifies the difference
http://www.php.net/manual/en/language.references.whatare.php – 2013-08-25 05:37:53
您也可以检查出[此链接](http://stackoverflow.com/questions/879/php-variables-passed-by-value-or-by-reference) – orustammanapov