php中& $var1中的&是什么意思?

解决方案 »

  1.   

    可变变量
    有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置,例如: 
    <?php
    $a = 'hello';
    ?>  
    一个可变变量获取了一个普通变量的值作为这个可变变量的变量名。在上面的例子中 hello 使用了两个美元符号($)以后,就可以作为一个可变变量的变量了。例如: 
    <?php
    $$a = 'world';
    ?>  
    这时,两个变量都被定义了:$a 的内容是“hello”并且 $hello 的内容是“world”。因此,可以表述为: 
    <?php
    echo "$a ${$a}";
    ?>  
    以下写法更准确并且会输出同样的结果: 
    <?php
    echo "$a $hello";
    ?>  
    它们都会输出:hello world。
      

  2.   


    <?php
    echo "<pre>\n";
    $arr = Array("Arr1","Arr2");foreach($arr as $array){
     $array = "3" ;
    }print_r( $arr );echo "\n上面的说明 \$array 是用 值传递 , 修改 \$array 并没有造成原数组的变化 \n";foreach($arr as &$array){
     $array = "3" ;

    print_r( $arr );echo "\n上面的说明 \$array 是用 引用传递(传递的是变量的地址) , 修改 \$array 造成原数组的变化 \n";
    echo "\n这就是区别,你可以关注下  php参数传递方式\n";
    ?> 
      

  3.   

    还是不明白,有什么用途,经常看到他们。
    但是我依写那个 &$ 就报错function func1(){
       global &$db;
    }一写就报错。