>  기사  >  백엔드 개발  >  php实现多维数组中每个单元值(数字)翻倍的方法_PHP

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

WBOY
WBOY원래의
2016-05-31 13:16:54875검색

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

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

代码如下

<&#63;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 class="brush:php;toolbar:false">";
print_r(arr2($arr));
&#63;>

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

<&#63;php
$arr = array(1,3,'a'=>20,'b'=>array(2,4,6,'c'=>7));
function t(&$arr){ 
 $arr *= 2;
}
echo "<pre class="brush:php;toolbar:false">";
array_walk_recursive($arr,'t');
print_r($arr);
&#63;>

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.