-3
Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
        )

    [1] => Array
        (
            [0] => c
        )

    [2] => Array
        (
            [0] => d
            [1] => e
            [2] => f
        )

)

I want to convert above two dimensional array into following array using implode or any other function in php

Array
(
[0]=>a,b
[1]=>c
[2]=>d,e,f
)
Siva
  • 25
  • 7

3 Answers3

4

You can use a loop and implode them and store them -

foreach($yourArray as $key => $array) {
    $yourArray[$key] = implode(',', $array);
}

Or array_map also help -

$new = array_map(function($array) {
    return implode(',', $array);
}, $yourArray);
Sougata Bose
  • 31,517
  • 8
  • 49
  • 87
0
$newArray = array();
foreach ($array $k => $v) {
    $newArray[$k] = implode(",", $v);
}
Nipun Tyagi
  • 878
  • 9
  • 26
0

If you want to change your existing array,

array_walk($your_array, function(&$v){
    $v = implode(',', $v);
});

If you want a new array,

$new_array = array_map('implode', $your_array,
                 array_fill(0, count($your_array), ',')
             );
viral
  • 3,724
  • 1
  • 18
  • 32