Rom*_*man 11 php arrays arguments function
我想有一个函数,它接受一个数组作为输入并更改数组的一些值(在我的情况下,数组是$ _SESSION但我认为它并不真正匹配).
我怎样才能做到这一点?
添加
这听起来微不足道.但事实并非如此.我只想为数组设置某些值.例如,我希望我的函数更改$ _SESSION ['x']和$ _SESSION ['y'].据我所知,如果我将数组作为参数传递,那么参数的任何更改都不会修改原始数组.例如:
function change_array($x) {
$x[0] = 100;
}
$x = array(1,2,3);
change_array($x);
Run Code Online (Sandbox Code Playgroud)
它不会改变$ x.
增加2
为什么我的问题被低估了?我认为这个问题虽然很短,但并不是那么微不足道.我也认为我提供了所有相关细节.据我所知(感谢一个答案),它是关于"传递参考".而且,我想修改$ _SEESION数组的事实使它有点不同.
Hai*_*vgi 21
你的意思是什么:通过参考传递
它非常简单
function changearray(&$arr){
$arr['x'] = 'y';
}
Run Code Online (Sandbox Code Playgroud)
你可以这样称呼:
changearray($_SESSION);
Run Code Online (Sandbox Code Playgroud)