I have to array, in text field might get duplicated data, I want to combine two array into one with unique text
$a = array(
array(
'domain' => 'default',
'text' => 'a',
),
array(
'domain' => 'default',
'text' => 'b',
),
);
$b = array(
array(
'domain' => 'default',
'text' => 'a',
),
array(
'domain' => 'default',
'text' => 'c',
),
);
expected result
array(
array(
'domain' => 'default',
'text' => 'a',
),
array(
'domain' => 'default',
'text' => 'c',
),
array(
'domain' => 'default',
'text' => 'b',
),
);
This is how I do it now
$merged = array_merge($a, $b);
$extractText = array_map(function($item) {
return $item['text'];
}, $merged);
$result = array_map(function($item) {
return array(
'domain' => 'default',
'text' => $item
);
}, array_unique($extractText));
var_dump($result);
Looking for origin PHP way or another way more efficient to achieve this.