Оператор объединения массива "+=" для добавления к массивамPhp

Кемеровские программисты php общаются здесь
Anonymous
Оператор объединения массива "+=" для добавления к массивам

Сообщение Anonymous »

Это вопрос о языковых конструкциях.
Существует ли оператор массива, аналогичный «+», который можно использовать для добавления элементов в конец массива? Нет, не добавление отдельного элемента []=.
Рабочий пример с именованными ключами:

Код: Выделить всё

$array = [0 => 'a'] + [1 => 'b', 2 => 'c'];
var_dump($array); // array(2) { [0]=> string(1) "a" [1]=> string(1) "b" [2]=> string(1) "c"}
Нерабочие примеры:

Код: Выделить всё

$array = ['a'] + ['b', 'c'];
var_dump($array); // array(1) { [0 => "a", 1 => "c"] }

$array = [1 => 'a'] + ['b', 'c'];
var_dump($array); // array(1) { [1 => "a", 0 => "b"] }

$array = ['a'] + [0 => 'b', 'c'];
var_dump($array); // array(1) { [0 => "a", 1 => "c"] }
Оператор не будет перезаписывать существующий ключ в массиве. Я хочу избежать передачи его служебным функциям, таким как array_push() или array_merge(), или дублирования строк с помощью "[]=". Возможно ли это?
Я этого не ищу:

Код: Выделить всё

$array[] = ['b'];
$array[] = ['c'];
Но что-то похожее на:

Код: Выделить всё

$array += ['b', 'c'];
(Я приму ответ «Нет, это невозможно», если это правильный ответ.)

Подробнее здесь: https://stackoverflow.com/questions/782 ... -to-arrays

Вернуться в «Php»