探讨PHP引用&符号
程序员文章站
2024-01-01 17:46:46
...
php的引用符号我一般在写代码的时候基本不用,首先是不大了解它的用法,C语言是用来取地址的,但是PHP里面可能有些不一样,据说是变量的拷贝,也就是重新复制一份相同的变量,比如 $a=$b; 那么变量a和变量b是完全相等的,完全等效于$a=$b;所以有必要写成$a=
php的引用符号我一般在写代码的时候基本不用,首先是不大了解它的用法,C语言是用来取地址的,但是PHP里面可能有些不一样,据说是变量的拷贝,也就是重新复制一份相同的变量,比如
$a=&$b;
那么变量a和变量b是完全相等的,完全等效于$a=$b;所以有必要写成$a=&$b吗?这样还可能会多占用内存空间
有的人喜欢这样写
function &f($arg1,) {
//code body
}
我认为这样写没有什么实际的作用,一般是引用操作符写在函数的参数里面的:
function f(&$x,&$y){
//这里是对 $x和$y的操作 ,也就是赋值给$x和$y,如果$x和$y都要在函数外部返回值的情况下;
//不需要用return语句
}
然后如果调用了函数f的话,那么在函数外部是可以直接得到计算后的$x和$y的值。
$total=array();
$total_data='';
f(&$total,&$total_data);
echo $total_data; //这里输出f函数计算后total_data的值
var_dump($total);//这里输出f函数计算后total的值