-3

来自php 文档

我发现了这一点,但完全混淆了这些运算符之间的区别(= and =&)

$instance = new SimpleClass();

$assigned   =  $instance;
$reference  =& $instance;

任何人都可以适当地解释一下吗?

4

2 回答 2

1
    <?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
于 2013-08-25T05:59:02.143 回答
0

你可以这样理解:

$instance = "5";
$assigned = $instance; // stores "5"
$reference =& $instance; // Point to the object $instance stores "5"
$instance = null; // $instance and $reference become null

意思是

$instance 的值为“5”将为空

$assigned 的值“5”不会为空,因为它与“5”一起存储

$reference 的值“5”将是 null,因为它指向 $instance

于 2013-08-25T06:08:51.500 回答