PHP Объединение константных массивов в новый константный массив без вложенности - PullRequest
1 голос
/ 05 января 2020

Допустим, у меня есть 3 const массива:

const A = ["a", "aa", "aaa"];
const B = ["b", "bb"];
const C = ["c"];

Теперь я хочу объединить / объединить их в другой массив const D без их вложения. Как я могу это сделать?

В основном я ищу что-то вроде array_merge(), но для констант, потому что, как мы все знаем, выражения не могут быть назначены константам.

Результат, который я ищу:

const D = ["a", "aa", "aaa", "b", "bb", "c"];

, который

const D = array_merge(A, B, C);

предоставил бы мне, , если бы выражения были разрешены для константы.

Я пытался

const D = A + B + C;

, но это оставляет мне только содержимое A в D.

Я также пытался

const D = [A, B, C];

, но, как и следовало ожидать, это приводит к массиву массивов [["a", "aa", "aaa"], ["b", "bb"], ["c"]], который не , что я ищу.

1 Ответ

1 голос
/ 05 января 2020

Вы можете использовать оператор распространения для массивов (также известный как распаковка), начиная с PHP 7,4 ( начальный RF C):

const D = [...A, ...B, ...C];

Демонстрация: https://3v4l.org/HOpYH

Я не думаю, что есть какой-либо (другой) способ сделать это с предыдущими версиями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...