只有在函数定义时有引用符,在函数调用时不能有引用符,比如:
$return = array();
function childid($a, $id,&$return) {
foreach($a as $k => $v) {
if($v['fid'] == $id) {
$return[] = $v['id'];
unset($a[$k]);
childid($a, $v['id'], $return);
}
}
}
childid($a,1,$return);
echo "<pre>";var_dump($return);exit;
是正确的,而
$return = array();
function childid($a, $id,&$return) {
foreach($a as $k => $v) {
if($v['fid'] == $id) {
$return[] = $v['id'];
unset($a[$k]);
childid($a, $v['id'], &$return);
}
}
}
childid($a,1,&$return);
echo "<pre>";var_dump($return);exit;
是错误的