note 119000 deleted from function.array-merge by salathe
| From: | salathe@php.net | Date: | Mon, 06 Sep 2021 22:43:46 +0000 |
| Subject: | note 119000 deleted from function.array-merge by salathe | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-216880@lists.php.net to get a copy of this message | ||
Note Submitter: arifulin at gmail dot com
----
public function mergeArrays($arrays, $field)
{
//take array in arrays for retrive structure after merging
$clean_array = current($arrays);
foreach ($clean_array as $i => $value) {
$clean_array[$i]='';
}
$merged_array = [];
$name = '';
foreach ($arrays as $array){
$array = array_filter($array); //clean array from empty values
if ($name == $array[$field]) {
$merged_array[$name] = array_merge($merged_array[$name], $array);
$name = $array[$field];
} else {
$name = $array[$field];
$merged_array[$name] = $array;
}
}
//have to be cleaned from array 'field' signs to return original structure of
arrays
foreach ($merged_array as $array){
$ready_array[] = array_merge($clean_array, $array);
}
return $ready_array;
}