получить все материалы на основе UUID из двух переменных

так что я $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

Решение

Вы можете объединить два массива в один, используя 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"]
]
2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector