【问题标题】:Best way to Convert array of arrays into single array [duplicate]将数组数组转换为单个数组的最佳方法[重复]
【发布时间】:2017-12-19 10:45:09
【问题描述】:

我要转换

$array_of_arrays = [[1,2,3],[4,5,6],[7,8],[9,10]];

进入

 $array = [1,2,3,4,5,6,7,8,9,10];

我可以使用

    $array = [];
 foreach($array_of_arrays as $one_array):
    $array = array_merge($array,$one_array);
   endforeach;          

但是我有很长的数组,是否存在任何函数(方法)可以在没有 foreach 循环的情况下执行此操作

【问题讨论】:

    标签: php


    【解决方案1】:

    // array_merge 与 call_user_func_array 的使用

            $array_of_arrays = [[1,2,3],[4,5,6],[7,8],[9,10]];  
            $oneDimensionalArray = call_user_func_array('array_merge', $array_of_arrays);
            print_r( $oneDimensionalArray);
    

    // 输出将是:数组 ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 [7] => 8 [8] => 9 [9] => 10)

    // 阅读更多关于 call_user_func_array() PHP call_user_func with class and arguments

    【讨论】:

      【解决方案2】:

      您可以将array_mergecall_user_func_array 一起使用:

      $res = call_user_func_array('array_merge', $array_of_arrays);
      var_dump($res);
      
      array(10) {
        [0] =>
        int(1)
        [1] =>
        int(2)
        [2] =>
        int(3)
        [3] =>
        int(4)
        [4] =>
        int(5)
        [5] =>
        int(6)
        [6] =>
        int(7)
        [7] =>
        int(8)
        [8] =>
        int(9)
        [9] =>
        int(10)
      }
      

      【讨论】:

        【解决方案3】:

        带有call_user_func_array功能:

        $array_of_arrays = [[1,2,3],[4,5,6],[7,8],[9,10]];
        $result = call_user_func_array("array_merge", $array_of_arrays);
        print_r($result);
        

        输出:

        Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
            [3] => 4
            [4] => 5
            [5] => 6
            [6] => 7
            [7] => 8
            [8] => 9
            [9] => 10
        )
        

        【讨论】:

          猜你喜欢
          • 2021-11-17
          • 1970-01-01
          • 2023-03-26
          • 2013-10-30
          • 1970-01-01
          • 2015-11-30
          • 2017-08-27
          • 2021-04-21
          • 2020-06-01
          相关资源
          最近更新 更多