PHP多维数组转一维数组的简单实现方法
本文实例讲述了PHP多维数组转一维数组的简单实现方法。分享给大家供大家参考,具体如下:
php语言本身没有将多维数组转为一维数组的函数,但是我们可以自己写一个php函数来实现将多维转一维的功能。
运用了递归,简单粗暴,整个函数体9行代码就实现了该功能,php源码如下:
$multi = array( array( array( 'wo', 'shi' ), 'php' ), 'cheng', array( array( 'xu', 'yuan', ) ), '!' ); $multi = arrToOne($multi); print_r($multi); function arrToOne($multi) { $arr = array(); foreach ($multi as $key => $val) { if( is_array($val) ) { $arr = array_merge($arr, arrToOne($val)); } else { $arr[] = $val; } } return $arr; }
执行后的效果:
Array ( [0] => wo [1] => shi [2] => php [3] => cheng [4] => xu [5] => yuan [6] => ! )
希望本文所述对大家PHP程序设计有所帮助。
相关推荐
-
php实现给二维数组中所有一维数组添加值的方法
本文实例讲述了php实现给二维数组中所有一维数组添加值的方法.分享给大家供大家参考,具体如下: 给二维数组中所有的一维数组添加值(索引和关联) $shop = array( 0=>array(0=>1,1=>2,2=>3,3=>4) ,1=>array(0=>1,1=>2,2=>3) ,2=>array(0=>1,1=>2,2=>3) ); print_r($shop); //示例 1:引用循环变量的地址赋值 foreach($
-
php一维二维数组键排序方法实例总结
本文实例总结了php一维二维数组键排序方法.分享给大家供大家参考.具体方法如下: 在php中数组排序一直是一个老生常谈的问题,下面我们来集中讲一下关于在php中一维数组与二维数组排序的实现程序,相信对大家有一定的参考借鉴价值. 功能:对数组进行重新排序. 说明:冒泡排序 (一维数组)(二维数组某个健排序) 两两比较待排序数据元素的大小,发现两个数据元素的次序相反时即进行交换,直到没有反序的数据元素为止 设想被排序的数组R[1..N] 垂直竖立,将每个数据元素看作有重量的气泡,从下往上扫描数组,凡
-
Thinkphp将二维数组变为标签适用的一维数组方法总结
本文实例总结了Thinkphp将二维数组变为标签适用的一维数组方法.分享给大家供大家参考.具体实现方法如下: 方法一: 复制代码 代码如下: $projectList=arr1tag($projectList,array('','请选择'),'project_name'); //其中$list为传值过来的二维数组,$default为默认值,$k为指定的表字段 function arr1tag($list,$default='',$k=''){ $tmp=''; if(array(
-
3个PHP多维数组转为一维数组的方法实例
很多时候我们需要将多维数组转成一维数组,因为我们只需要一维数组,而且一维数组使用起来更方便,在PHP中如何将多维数组转成一维数组?下面我们来看看三个多维数组转为一维数组例子:一.使用foreach 复制代码 代码如下: <?php function arr_foreach ($arr) { static $tmp=array(); if (!is_array ($arr)) { return false; } fo
-
php中判断数组是一维,二维,还是多维的解决方法
复制代码 代码如下: <?php/** * 返回数组的维度 * @param [type] $arr [description] * @return [type] [description] */function arrayLevel($arr){ $al = array(0); function aL($arr,&$al,$level=0){ if(is_array($arr)){ $level++; $al
-
php 一维数组的循环遍历实现代码
一个简单的PHP循环一维数组的实例,先是把字符串按照一定的规则进行转换成为数组,然后再进行遍历输出,实际是一个很简单的方法,因为最近做的一个二维数组结构图搞得很头疼,所以一时半会儿想不起来如何进行遍历输出了.简单的实例代码如下: foreach遍历数组 <?php /* * 数组的遍历 */ $language = array("French",'German','Russian','Chinese','Hindi','Quechu'); foreach ($language a
-
php将一维数组转换为每3个连续值组成的二维数组
本文实例讲述了php实现将一维数组转换为每3个连续值组成的二维数组.分享给大家供大家参考,具体如下: <?php $aaa = array('aa','bb','cc','dd','ee','ff','gg','hh','ii'); for($i=0;$i<3;$i++) { $bbb[] = array_slice($aaa, $i * 3 ,3); } print_r($bbb); ?> 运行结果如下: Array ( [0] => Array ( [0] => aa [
-
PHP实现判断数组是一维、二维或几维的方法
本文实例讲述了PHP实现判断数组是一维.二维或几维的方法.分享给大家供大家参考,具体如下: 这里使用的自定义函数,可以判断数组是一维的,还是二维的,或是几维的数组: function getmaxdim($vDim) { if(!is_array($vDim)) return 0; else { $max1 = 0; foreach($vDim as $item1) { $t1 = $this->getmaxdim($item1); if( $t1 > $max1) $max1 = $t1;
-
将一维或多维的数组连接成一个字符串的php代码
复制代码 代码如下: /* * ----------------- * @file : 5.php * @function : arr2str * @copyright : 2002-2009 Xingmo Inc * @author : Fanglor <fanglor#163.com> * @date : 2010-06-25 * @update : * ----------------- */ <?php $fruits = array ( "fruits" =
-
php实现搜索一维数组元素并删除二维数组对应元素的方法
本文实例讲述了php实现搜索一维数组元素并删除二维数组对应元素的方法.分享给大家供大家参考.具体如下: 定义一个一维数组一个二维数组如下 $fruit=array('apple','orange'); $products = array( array('name'=>'apple','price'=>23.4), array('name'=>'orange','price'=>45.3), array('name'=>'biscuit','number'=>5,'pri
-
PHP实现一维数组转二维数组的方法
本文实例讲述了PHP实现一维数组转二维数组的方法.分享给大家供大家参考.具体实现方法如下: <?php $asr[1] = array("a","b","c","d"); $asr[2] = array("a","b","c","d"); $asr[3] = array("a","b","c&
-
PHP实现多维数组转字符串和多维数组转一维数组的方法
本文实例讲述了PHP实现多维数组转字符串和多维数组转一维数组的方法.分享给大家供大家参考.具体实现方法如下: /** * @method 多维数组转字符串 * @param type $array * @return type $srting * @author yanhuixian */ function arrayToString($arr) { if (is_array($arr)){ return implode(',', array_map('arrayToString', $arr)
随机推荐
- Java判断字符串为空、字符串是否为数字
- java工具类之实现java获取文件行数
- IOS 中NSUserDefaults读取和写入自定义对象的实现方法
- 从别人那拷下来的几点Session使用的经验
- myEvent.js javascript跨浏览器事件框架
- C#监控文件夹变化的方法
- Python的爬虫程序编写框架Scrapy入门学习教程
- 深入理解JavaScript系列(19):求值策略(Evaluation strategy)详解
- 通过命令行生成vue项目框架的方法
- Linux执行.sh文件时提示No such file or directory该怎么办(三种解决办法)
- Go语言使用MySql的方法
- JSP简明教程:令人兴奋的脚本编程
- Javascript图像处理—为矩阵添加常用方法
- PHP按行读取文件时删除换行符的3种方法
- SQL Server存储过程同时返回分页结果集和总数
- Centos7.3下mysql5.7.18安装并修改初始密码的方法
- AndroidStudio不自动添加新创建的文件到VCS的解决办法
- nodejs命令行参数处理模块commander使用实例
- Java 逻辑运算符中&&与&,||与|的区别
- JAVA使用HtmlUnit爬虫工具模拟登陆CSDN案例