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

yipeiwu_com5年前PHP代码库

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

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

代码如下

<?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));
?>

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

<?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程序设计有所帮助。

相关文章

php 静态属性和静态方法区别详解

php 静态属性和静态方法区别详解

静态 public、private、protected 静态属性     在属性或方法前加static关键字,即为静态属性   ...

php中钩子(hook)的原理与简单应用demo示例

本文实例讲述了php中钩子(hook)的原理与简单应用。分享给大家供大家参考,具体如下: 我们先来回顾下原本的开发流程;   产品汪搞出了一堆需求;   当用户注册成功后需要发送短信、发...

PHP排序算法之简单选择排序(Simple Selection Sort)实例分析

本文实例讲述了PHP排序算法之简单选择排序(Simple Selection Sort)。分享给大家供大家参考,具体如下: 基本思想: 通过 n - i 次关键字间的比较,从 n - i...

简单谈谈PHP中的Reload操作

前言 有很多前辈告诫过我们,reload 能保证整个过程的平滑性,所谓平滑性指的是在 reload 的过程中,旧的进程在处理完当前请求前不会提前终止。很多年来,我从来没有质疑过这种说法,...

PHP实现多图片上传类实例

本文所述为一个实用的PHP多图片文件上传类,其支持gif、jpg、jpeg、pjpeg、png格式的多图片上传功能,类中还可限制图片类型、上传图片的大小、设置上传目录、一些提交判断等功能...