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

(0)

相关推荐

  • 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)

随机推荐