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

yipeiwu_com6年前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将DateTime对象转化为友好时间显示的实现代码

复制代码 代码如下: /** * 友好日期时间 * * @param DateTime $datetime 日期时间 * @param int $size 精确到位数 * @throws...

THINKPHP+JS实现缩放图片式截图的实现

THINKPHP+JS实现缩放图片式截图的实现

作者:杨鑫奇 原始链接:http://www.cnblogs.com/scotoma/archive/2010/03/05/1679477.html 今晚TP论坛的一位大哥加我了,说也遇...

php Memcache 中实现消息队列

对于一个很大的消息队列,频繁进行进行大数据库的序列化 和 反序列化,有太耗费。下面是我用PHP 实现的一个消息队列,只需要在尾部插入一个数据,就操作尾部,不用操作整个消息队列进行读取,与...

cmd下运行php脚本

其实蛮简单的 我的php安装目录在 d:\php 那么 运行 cmd >d: >cd php 要让工作目录指向php.exe的安装文件夹 然后就可以用php指令了 比如 在该...

关于php支持分块与断点续传文件下载功能代码

本文章要介绍了这篇文章是一篇关于php流下载,就是可以支持分块与断点续传文件下载,有需要的朋友可以看看。代码如下 复制代码 代码如下: $dowmFile = dirname ( __F...