其实很简单
注意你的两个get_arr()操作语句
get_arr(&$arr1);
get_arr($arr2);
第一个get_arr()使用到了取引用符&,并且将$arr1传入。这样子,传入了$arr1的引用,在get_arr()内部相当于直接操作了$arr1数组,而该数组删除了数组首位的值,所以长度只有1。
而第二个get_arr()并没有使用引用,当你将$arr2传入时,相当于将$arr2复制了一份传入,get_arr()函数处理的只是$arr2的拷贝,所以他只是删除了$arr2拷贝的首位值,对$arr2本身没有影响
嗯,是的,一个是复制一份,一个是其别名的
你要理解变量引用,局部变量,全局变量的概念