&$y6_tel1_name应该是php引用变量的写法,$y6_tel1_name是变量名,&代表引用,
具体的作用可以参考手册--》变量引用

解决方案 »

  1.   

    谢谢你的回答,不过这不是我想要的答案,你这和没说没有什么区别啊。我是不明白为什么要这么用,直接$y6_tel1_name不就可以了么,为什么还要&$y6_tel1_name呢,所以才向大家请教的啊。
      

  2.   

    用了引用,最直接的是可以影响$y6_tel1_name。如果这个变量在函数内的值被改变了,同样在函数外这个变量也被改变了。这就是引用的最直接的作用。$smarty->assign("selected_y6_tel1_name", $y6_tel1_name); 看这里就使用了这个变量。
      

  3.   

    所谓引用你可以理解成指针,传递&$y6_tel1_name就是吧$y6_tel1_name所指的内存地址的变量传递作参数。
    PHP函数参数对于非资源类变量默认按值传递,函数的参数与变量是两个指向不同内存地址的同值变量,任何一个的值发生改变不会对另外一个有影响。
    使用传址(引用)方式传递参数,参数和变量实际上指向统一内存地址,参数的值在函数内部发生,变量本身的值也会改变。
      

  4.   

    这样做的最直接的作用就是:$y6_tel1_nam在函数内部改变值了,同时会影响函数外的值。
      

  5.   

    哦,这么说吧
    <?
    $aa="aa";
    function bb(&$aa)
    {
    $aa="bb";
    }
    bb($aa);
    echo $aa;
    ?>这个时候echo $aa,你可以看到输出的是bb,而如果没有引用,输出的将是aa,
    此时带引用的变量可以将其当作一个全局变量