recurse_array_change_key_case()递规返回字符串键名全为小写或大写的数组_PHP教程
程序员文章站
2024-04-04 09:20:35
...
//递归返回字符串键名全为小写或大写的数组
function recurse_array_change_key_case(&$input, $case = CASE_LOWER){
if(!is_array($input))
return;
foreach($input as $key => $val)
{
//1
if($case == CASE_UPPER)
{
$newkey = strtoupper($key);
}
//0
elseif($case == CASE_LOWER)
{
$newkey = strtolower($key);
}
if($newkey != $key)
{
unset($input[$key]);
$input[$newkey] = $val;
}
if(is_array($val))
{
//###注:此处的参数须为$input[$newkey],而不是$val,如果是$val,需要在foreach中 $key=>&$val
recurse_array_change_key_case($input[$newkey], $case);
}
}
}
function recurse_array_change_key_case(&$input, $case = CASE_LOWER){
if(!is_array($input))
return;
foreach($input as $key => $val)
{
//1
if($case == CASE_UPPER)
{
$newkey = strtoupper($key);
}
//0
elseif($case == CASE_LOWER)
{
$newkey = strtolower($key);
}
if($newkey != $key)
{
unset($input[$key]);
$input[$newkey] = $val;
}
if(is_array($val))
{
//###注:此处的参数须为$input[$newkey],而不是$val,如果是$val,需要在foreach中 $key=>&$val
recurse_array_change_key_case($input[$newkey], $case);
}
}
}
推荐阅读