P函数、数组键值、键名大小写转换函数

老虎说测试 脚本开发字数 1762阅读5分52秒阅读模式
摘要P函数、数组键值、键名大小写转换函数

P函数、数组键值、键名大小写转换函数。

<?php
########################################
#
#数组键名和键值转化大小写函数
#
########################################
header('Content-type:text/html;Charset=utf-8');

//直接定义一个数组,方便调试
$arr = array(
'a' => 'abSSddd',
'B' => 'addEEsss',
'c' => array(
'D' => 'hhWWUUiii',
'e' => 'FFqqq',
'F' => array(
'g' => 'aaAADww',
'H' => 'QQQssss',
),
),
);

############################################
#
#打印函数
#
############################################

function p($arr){
header('Content-type:text/html;Charset=utf-8');
echo "<pre style='position:relative;z-index:1000;padding:10px;border-radius:5px;background:#F5F5F5;border:1px solid #aaa;font-size:14px;line-height:18px;opacity:0.9;'>";
print_r($arr);
echo "</pre>";
}

############################################
#
#函数会处理数组键名进行大小写转换
#
#array_changge_uplower('数组','==1为大写,其他为小写')
#
############################################

function array_changge_uplower($arr,$keyFlag=1){
//如果不是数组,返回字符串
if(!is_array($arr)) return $arr;
//根据传入的值,进行需要转大小写赋值
$uKey = $keyFlag == 1 ? CASE_UPPER : CASE_LOWER;
//对数组进行大小写的转换
$out = array_change_key_case($arr,$uKey);
// 再次遍历数组,对内部数组进行递归处理
foreach($out as $k => $v){
//如果键值还是数组,则再次进行转换
if(is_array($v)){
$out[$k] = array_changge_uplower($v,$keyFlag);
}
}
return $out;
}

############################################
#
#函数会处理数组键值进行大小写转换
#
#changeValue('数组','==1为大写,其他为小写')
#
############################################

function changeValue($arr,$flag=1){
//如果不是数组,直接返回值
if(!is_array($arr)) return $arr;
//吐过flag为1转换为大写,否则为小写
$u = ($flag==1) ? 'strtoupper' : 'strtolower';
// 遍历数组,对内部数组进行递归处理
foreach ($arr as $key => $value) {
//如果是数组,再次进行遍历处理
if(is_array($value)){
$out[$key] = changeValue($value,$flag);
//如果不是数组,则转换键值
}else{
$out[$key] = $u($value);
}
}
return $out;
}

echo "<div>原数组是这样的:</div>";
p($arr);
echo "<div>转换为大写后是这样的:</div>";
$au = changeValue($arr,1);
p($au);
echo "<div>转换为小写后是这样的:</div>";
$al = changeValue($arr,2);
p($al);
文章源自陈学虎-https://chenxuehu.com/article/2015/02/4289.html文章源自陈学虎-https://chenxuehu.com/article/2015/02/4289.html

 最后更新:2022-4-30
  • 版权声明:本文为原创文章,转载请附上原文出处链接及本声明。
  • 转载请注明:P函数、数组键值、键名大小写转换函数 | https://chenxuehu.com/article/2015/02/4289.html
  • P函数
  • 大小写转换