';
    $c='ABC';
    $d=&$c;//$b指向$a的内存地址,传地址赋值
    $d='E';
    echo $c;
    /**
    CC
    --------------------------------------------------------------------------------
    E
    * */
    ?>
    ';
    return $b;
    }
    $a=test();
    echo '$a='.$a;//这里不是函数的引用返回,跟普通的函数调用没有区别
    $a=&test();  //这种方式才是函数的引用返回。
    //至于什么是引用返回呢(PHP手册上说:引用返回用在当想用函数找到引用应该被绑定在哪一个变量上面时。)
    //用在这里意思就是test()被绑定在$a上了。
    echo '$a='.$a;
    $a=6;
    test();//这条语句会输出$b的值 为7
    echo '$a='.$a;
    /*
    $b=1
    $a=1$b=2
    $a=2$b=7
    $a=7
    * */
    ?>
    ';
    printArray($a);
    print_r($b);
    print_r($a);
    /**
      2Array ( [0] => 1 [1] => 2 [2] => 3 ) Array ( [0] => 1 [1] => 2 )
    --------------------------------------------------------------------------------
    1Array ( [0] => 1 [1] => 2 [2] => 3 ) Array ( [0] => 1 )
      * */
    ?>
    name='.$b->name;//这里输出ABC
    echo '
'; echo '$c->name='.$c->name;//这里输出ABC echo '
'; $b->name="DEF"; echo '$b->name='.$b->name; echo '
'; echo '$c->name='.$c->name; echo '
'; /* 在PHP5中 对象的复制 是通过引用来实现的。 上列中$b=new a; $c=$b; 其实等效于$b=new a; $c=&$b; PHP5中默认就是通过引用来调用对象, 但有时你可能想建立一个对象的副本, 并希望原来的对象的改变不影响到副本 . 为了这样的目的,PHP定义了一个特殊的方法,称为__clone. * */ $x=new a; $y=clone $x; $x->name='XXX'; echo '$x->name='.$x->name; echo '
'; echo '$y->name='.$y->name; /* $b->name=ABC $c->name=ABC $b->name=DEF $c->name=DEF -------------------------------------------------------------------------------- $x->name=XXX $y->name=ABC * */ ?>
- EOF -