У меня есть два массива значений, которые я хотел бы объединить, но, похоже, единственные методы, которые предоставляет PHP, объединяются по ключу вместо значения. Вот хак, который я смог использовать, чтобы заставить это работать, но мне интересно, есть ли лучший метод или нативная функция, которую я пропустил. Прошло довольно много времени с тех пор, как я последний раз использовал массивы, и, похоже, на это есть простой ответ.
//Input arrays that we want to combine into one array
$array = array(2, 3, 4, 5);
$array2 = array(5, 6, 1);
//Flip values and keys
$array = array_flip($array);
$array2 = array_flip($array2);
//Combine array
$array3 = $array2 + $array;
//flip array keys back to values
$array3 = array_keys($array3);
//Optional sort
sort($array3);
print_r($array3);
Возвращает объединенные значения двух массивов:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
)