实例
//array_merge()
//用自定义函数实现
//array_merge()
//功能:合并多个或多个以上的数组
//判断键是否为字符串,如果是字符串就保留,不是字符串就重新排序
$arr0 = array(
1,
2,
3,
4,
5,
6,
);
$arr1 = array(
'张1'=>'张一',
'王1'=>'王二',
'李1'=>'李三',
'邓1'=>'邓四',
'梁1'=>'梁五'
);
$arr2 = array(
11,
12,
13,
14,
15
);
echo '
';
//创建一个新的自定义函数
function demo(){
//这里用到了 func_get_arfs()函数,获取了实参里面的数值并以字符串
var_dump(func_get_args());
//打印出实参的所返回的数组,并以一个二维数组形式返回
echo '
';
$new_array = func_get_args();
//取一个变量值,并且把实参取回的二维数组存入这个变量
$news_array = array();
//定义一个新的变量,用于储存以下的数组遍历
//遍历二维数组
foreach($new_array as $key=>$value){
foreach($value as $key_1=>$value_1){
//此处遍历出来的$key为二维数组的键,$value为二维数组的值;
//判断所取回的值是否为字符串数字或数字;
if(is_numeric($key_1)){
//默认下标赋值进去,完成功能:当下标重复时后面的默认下标替换前面的下标,数组索引的下标会根据顺序排序
//当[]这个为空的时候,下标会按照顺序往下走,如果直接引入以上的值,则会产生后面下标会覆盖前面
//这里要记一个知识点 is_numeric()的检测,是从上往下一条一条检测的;
$news_array[] = $value_1;
}else{
//当检测结果不是字符串数字或者数字的时候,则输出以下区间
$news_array[$key_1] = $value_1;
}
}
}
var_dump($news_array);
}
//因为该功能参数并不固定,所以行参并没有设置,而实参数中输入值即可
demo($arr0,$arr1,$arr2);
运行实例 »
点击 "运行实例" 按钮查看在线实例