Mam dwie tablice, $user_roles
i $global_roles
. Chcę zrobić nową tablicę, nazwijmy to $available_roles
, gdzie może być utożsamiane jako elementów w $global_roles
mniej elementów w $user_roles
Połącz dwie elokwentne kolekcje i usuń wszystkie duplikaty.
Mam następujący kod, aby to zrobić na normalnej tablicy. $available_roles = array_unique(array_merge($global_roles, $user_roles), SORT_REGULAR);
Jest to problematyczne ze względu na fakt, że Laravel nie używa tradycyjnych tablic, gdy wykonuje kwerendę, używa Eumquent Collections.
Jakie masz inne pomysły?
rozumiem jak to ma działać, ale nie wydaje się działać tak, że zamierzam go. Oto zdjęcie tego, jak wyglądają dwie Kolekcje. (http://i.imgur.com/JGIN5en.png) Jeśli moje rozumowanie jest poprawne, czy dostępne role nie powinny być puste, ponieważ Użytkownik ma już przypisane mu role – Rijnhardt
Ah Widzę. Nie próbujesz * scalić * ich w ogóle. To, czego chcesz, to różnica między nimi. Wypróbuj '$ available_roles = $ user_roles-> diff ($ global_roles);' lub także '$ available_roles = $ global_roles-> except ($ user_roles-> modelKeys());' – lukasgeiter
Dziękuję, to było dokładnie to, czego potrzebowałem! – Rijnhardt