->unique()
кстати у вас отрабатывает, обратите внимание, не в бд, а в PHP, с учетом того, что там вложенная структура скорее всего здесь и происходит падение по памяти.$permissions = $q->get()->unique();
в замыкании, с передачей по ссылке и тп вообще не делайте. Замыкания в with сделаны чтобы дополнить запрос к отношению, а не получать там какие то результаты. Через чур сложно для новичка.
Я как раз и не понимаю как мне это сделать
<?php
// Вариант с array_multisort()
$ar = [
['id' => 1, 'name' => 'Баклажан'],
['id' => 12, 'name' => 'Гвозди'],
['id' => 18, 'name' => 'Арбуз'],
['id' => 22, 'name' => 'Виноград'],
['id' => 35, 'name' => 'Дыня'],
];
array_multisort(array_column($ar, 'name'), SORT_ASC, $ar);
var_dump($ar);
// Вариант с пользовательской функцией
$ar = [
['id' => 1, 'name' => 'Баклажан'],
['id' => 12, 'name' => 'Гвозди'],
['id' => 18, 'name' => 'Арбуз'],
['id' => 22, 'name' => 'Виноград'],
['id' => 35, 'name' => 'Дыня'],
];
usort($ar, function($a, $b) {
return $a['name'] > $b['name'];
});
var_dump($ar);