получить все материалы на основе UUID из двух переменных - PullRequest
0 голосов
/ 07 ноября 2018

Итак, у меня есть $patient_banner, который возвращает это:

[
    "3d078010-e24b-11e8-ab1d-2b077991ec5f",
    "64095f20-e25c-11e8-a2de-171e70f82e0f",
    "6b3ea0e0-e24b-11e8-8316-13a0f1f91303",
    "d9b275b0-e249-11e8-b8ce-fd92c15325d5",
    "7535baf0-e23e-11e8-8297-f50579ab9646"
]

и у меня есть $material_ids, который возвращает это:

[
    "65903500-9fe2-11e8-9dc3-9d0a219835de",
    "67e52880-d74f-11e8-921e-8f389ce79225"
]

и я выполняю этот код:

$material  = new Material;

$materials  = $material->whereIn(
   'uuid',
   [$material_ids, $patient_banner]
);

Я хочу, чтобы получилось так, что он вернул бы Материалы с UUIDS из $patient_banner и $material_ids, поэтому он должен вернуть 7 материалов, но я получаю только 2 материала, которые находятся в $material_ids. Что я должен сделать, чтобы получить 7 материалов от 2 разных переменных?

1 Ответ

0 голосов
/ 07 ноября 2018

Вы можете объединить два массива в один, используя array_merge:

$materials  = $material->whereIn(
   'uuid',
   array_merge($material_ids, $patient_banner)
);

Ваша текущая попытка [$material_ids, $patient_banner] не объединит два массива. Вместо этого он создал бы массив массивов, как показано ниже:

[
 [0] => [
         "3d078010-e24b-11e8-ab1d-2b077991ec5f",
         "64095f20-e25c-11e8-a2de-171e70f82e0f",
         "6b3ea0e0-e24b-11e8-8316-13a0f1f91303",
         "d9b275b0-e249-11e8-b8ce-fd92c15325d5",
         "7535baf0-e23e-11e8-8297-f50579ab9646"
        ], 
 [1] => [
         "65903500-9fe2-11e8-9dc3-9d0a219835de",
         "67e52880-d74f-11e8-921e-8f389ce79225"
        ]
]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...