Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Multidimensional array to array

Tags:

php

php-5.3

I often have a 2-dimensional array:

array(
  array('key' => 'value1'),
  array('key' => 'value2'),
  ...
);

And need to form a 1-dimensional array:

array('value1', 'value2')

This can easily be done with foreach, but I wonder if there's some php 5.3 way to do it in one line.

like image 578
Dziamid Avatar asked Aug 24 '26 18:08

Dziamid


2 Answers

$new_array = array_map(function($el) { return $el['key']; }, $array);
like image 62
Dogbert Avatar answered Aug 27 '26 07:08

Dogbert


<?php
    $arr = array(array(141,151,161,140),2,3,array(101,202,array(303,404),407));
    function array_oned($arrays){
        static $temp_array = array();
        foreach($arrays as $key){
            if(is_array($key)){
                array_oned($key);
            }else {
                $temp_array [] = $key;
            }
        }
        return $temp_array;
    }
    echo print_r(array_oned($arr));

?>

Did you mean something like this ?

like image 38
Dexy86 Avatar answered Aug 27 '26 07:08

Dexy86



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!