/** * 对关联数组中键名转换大小写处理 * @param [type] $arr 要转换的数组 * @param string $op 必须是CASE_LOWER,CASE_UPPER其中的值,忽略大小写,默认为CASE_LOWER * @return [type] 转换后的数组 */ function to_up_low($arr,$op='CASE_LOWER') { //判断第一个参数$arr是否是数组 //不是数组不进行操作 if(!is_array($arr)) { return '第一个参数不是数组'; } //判断第二参数$op的值 if(!in_array(strtoupper($op), array('CASE_LOWER','CASE_UPPER'))) { return '第二个参数不是 CASE_LOWER、CASE_UPPER其中的一个'; } //遍历数组 foreach($arr as $k => $a) { //查看是否有子数组,有子数组要进行递归处理 if(is_array($a)) { //递归调用函数 $arr[$k]=to_up_low($a,$op); } } //把转换后的数组放入 $result中 $result=array_change_key_case($arr,strtoupper($op)=='CASE_UPPER'?CASE_UPPER:CASE_LOWER); //返回结果 return $result; }