本文实例讲述了php实现多维数组中每个单元值(数字)翻倍的方法。分享给大家供大家参考。具体分析如下:
前提:一个多维数组,它的每个最小单元值都为数字。
要求:写一个函数,将最小单元值翻倍。
代码如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<?php
$arr = array (1,3, 'a' =>20, 'b' => array (2,4,6, 'c' =>7));
function arr2( $arr ){
foreach ( $arr as $key => $v ){
if (! is_array ( $v )){
$arr [ $key ] *= 2;
} else {
$arr [ $key ] = arr2( $arr [ $key ]);
}
}
return $arr ;
}
echo "<pre>" ;
print_r(arr2( $arr ));
?>
|
利用系统提供的函数来解决,方法如下:
1
2
3
4
5
6
7
8
9
|
<?php
$arr = array (1,3, 'a' =>20, 'b' => array (2,4,6, 'c' =>7));
function t(& $arr ){
$arr *= 2;
}
echo "<pre>" ;
array_walk_recursive ( $arr , 't' );
print_r( $arr );
?>
|
希望本文所述对大家的php程序设计有所帮助。