$str='中';
echo strlen($str)."
";//3
echo mb_strlen($str,'utf8')."
";//1
echo mb_strlen($str,'gbk')."
";//2
echo mb_strlen($str,'gb2312')."
";//2
$string = "as-df-sds";
echo str_replace(" ","",ucwords(str_replace('-',' ',$string))); //AsDfSds
//数组合并
$array1 = array(2,4,"color" => "red");
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array2, $array1);
echo "----------------array_merge---------------".PHP_EOL;
print_r($result);
echo "----------------+++++++++++---------------".PHP_EOL;
print_r($array1+$array2);
echo "----------------array_merge_recursive---------------".PHP_EOL;
print_r(array_merge_recursive($array1,$array2));
$a = array_merge_recursive($array1,$array2);
array_merge则会用后面的值覆盖前面出现的值;
+会用前面出现过的值覆盖后面相同的key;
array_merge_recursive则会把相同的索引放到一个数组里面,增加数组的维度;
对于相同的数字索引,
array_merge则会给重复的值重建索引(索引值从0开始);
+仍然是用前面出现过的值覆盖后面的值;
array_merge_recursive和array_merge的处理方法一样
//获取数组的深度
function get_array_depth($array){
$max_depth = 1;
foreach($array as $value){
if (is_array($value)){
$deep = get_array_depth($value)+1;
if ($deep > $max_depth){
$max_depth = $deep;
}
}
}
return $max_depth;
}
echo get_array_depth($array2);