1

I have an array of arrays:

$initial_array = [
    [
        'Site Name' => 'Sydney',
        'Product Name' => 'Admission',
        'Total Sales Value' => 3989.98,
        'Total Sales Quantity' => 570
    ],
    [
        'Site Name' => 'Sydney',
        'Product Name' => 'Admission Comp',
        'Total Sales Value' => 0.00,
        'Total Sales Quantity' => 195
    ]
];

That I want to use PHP to turn into a simple array as follows:

$translated_array = [
    'Sydney,Admission,3989.98,570',
    'Sydney,Admission Comp,0.00,195'
];

I've been playing with the array_values() function but cannot seem to get this right.

3 Answers 3

1

You can use implode function to convert the array into comma separated string. Since you want to convert each inner array into a string while keeping the array structure as it is, I have used a loop. You can use another way to reach to each inner array.

You can read more about implodeHERE

Try below

<?php

$final_array = [];

foreach($initial_array as $new_array){
   $final_array[] = implode(',', $new_array)
}
Sign up to request clarification or add additional context in comments.

Comments

0

Use implode to change the array values to comma seperated value,

 $array_values= [];
 foreach($initial_array as $array)
 {
   $array_values[]=implode(',',$array);
 }
 var_dump(array_values);

Comments

0

You can make mapped calls of implode() for a functional-style solution. (Demo)

var_export(
    array_map(fn($row) => implode(',', $row), $initial_array)
);

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.