В Laravel метод distinct
используется для получения коллекции с уникальными элементами. Он удаляет все повторяющиеся значения из коллекции и возвращает новую коллекцию с отдельными элементами. Вот несколько методов, которые можно использовать с методом distinct
в коллекциях Laravel, а также примеры кода:
-
all()
: этот метод возвращает все элементы коллекции в виде массива.$collection = collect([1, 2, 2, 3, 4, 4, 5]); $uniqueItems = $collection->distinct()->all(); // Output: [1, 2, 3, 4, 5]
-
toArray()
: этот метод преобразует коллекцию в простой массив PHP, содержащий уникальные элементы.$collection = collect([1, 2, 2, 3, 4, 4, 5]); $uniqueItems = $collection->distinct()->toArray(); // Output: [1, 2, 3, 4, 5]
-
values()
: этот метод возвращает новую коллекцию с уникальными значениями, сбрасывая ключи коллекции.$collection = collect([1, 2, 2, 3, 4, 4, 5]); $uniqueItems = $collection->distinct()->values(); // Output: [0 => 1, 1 => 2, 2 => 3, 3 => 4, 4 => 5]
-
unique()
: этот метод является псевдонимом дляdistinct()
и возвращает новую коллекцию с уникальными элементами.$collection = collect([1, 2, 2, 3, 4, 4, 5]); $uniqueItems = $collection->unique(); // Output: [1, 2, 3, 4, 5]
-
pluck()
: этот метод извлекает список уникальных значений для данного ключа из коллекции массивов или объектов.$collection = collect([ ['name' => 'John', 'age' => 25], ['name' => 'Jane', 'age' => 30], ['name' => 'John', 'age' => 35], ]); $uniqueNames = $collection->pluck('name')->unique(); // Output: ['John', 'Jane']