php新手,请教

来源:百度知道 编辑:UC知道 时间:2024/06/09 12:40:33
function findLog(&$Model, $params = array())
{}
想问一下,$params = array()是什么意思,是不是说只能放array类型的参数?
$Model 是不是理论上,我只是说理论上能放任何类型的参数?

function findLog(&$Model,$params=array()){}
这里我说明两点:
第一点,函数参数前加&代表是引用方式传递的,就类似于C语言中的指针,也就是说,在函数内对参数的修改回导致这个值本身的修改
举个例子
$model = 1;
function add(&$model){
$model++;
}
add($model);
add($model);
echo $model;//这里将输出3
如果不用引用方式传递,那么这里输出还是 1
第二点:$params = array()的意思是,如果传递个这个函数的第二个参数为空,那么将创建一个空数组给函数作为第二参数
你可以去测试
$model = 1;
function findLog(&$model,$params = array())
{
echo gettype($params);
}

findLog($model,'hello');//将输出string
findLog($mode);//将输出Array