Maison  >  Article  >  php教程  >  php实现多维数组中每个单元值(数字)翻倍的方法

php实现多维数组中每个单元值(数字)翻倍的方法

WBOY
WBOYoriginal
2016-06-13 09:12:311202parcourir

php实现多维数组中每个单元值(数字)翻倍的方法

 这篇文章主要介绍了php实现多维数组中每个单元值(数字)翻倍的方法,涉及php操作数组的技巧,需要的朋友可以参考下

 

 

本文实例讲述了php实现多维数组中每个单元值(数字)翻倍的方法。分享给大家供大家参考。具体分析如下:

前提:一个多维数组,它的每个最小单元值都为数字。
要求:写一个函数,将最小单元值翻倍。

代码如下

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

$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 "

";
            <p>print_r(arr2($arr));</p>
            <p>?></p>
            
            

利用系统提供的函数来解决,方法如下:

?

1

2

3

4

5

6

7

8

9

$arr = array(1,3,'a'=>20,'b'=>array(2,4,6,'c'=>7));

function t(&$arr){

$arr *= 2;

}

echo "

";
            <p>array_walk_recursive($arr,'t');</p>
            <p>print_r($arr);</p>
            <p>?></p>
            
            

希望本文所述对大家的php程序设计有所帮助。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn