Рубрики
Uncategorized

Совместное использование 10 полезных методов наборов laravel 5.8

Автор оригинала: David Wong.

Эта статья переслана из профессионального сообщества разработчиков laravel, оригинальная ссылка: https://learnku.com/laravel/t…

В laravel есть очень полезный класс для управления массивами, называемый коллекциями. Я считаю, что каждый разработчик laravel более или менее использовал коллекцию, особенно при работе с красноречивыми. В этой статье я перечислю 10 распространенных методов.

1. Удаление веса

дубликаты Метод извлечения всех повторяющихся значений в коллекции. Возвращаемый массив содержит ключ для каждого значения в исходном массиве.

php
$collection = collect(['james', 'lisa', 'ryan', 'james', 'brad', 'lisa']);
$collection->duplicates(); // [3 => 'james', 5 => 'lisa']

2. Пройдитесь по набору

Не используется для каждого Вы также можете просмотреть коллекцию, используя каждый метод. Как обычно foreach Таким же образом, каждый Метод также имеет два параметра, которые являются элементом и ключ

each(function ($item, $key) {
    // Do stuff
});

3. Набор выходных данных отладки

Когда мы отлаживаем код, нам часто требуется вывод, чтобы просмотреть содержимое коллекции. В дополнение к использованию дампа($коллекция) Кроме того, вы также можете использовать дамп Способ, использующий дамп Преимущество этого метода заключается в том, что результат выглядит чище и свежее.

dump(); 
/*
Collection {
  #items: array:3 [
    0 => "james"
    1 => "lisa"
    2 => "ryan"
  ]
}
*/

Если вы хотите вывести содержимое коллекции и точки останова, вы можете использовать dd (вывод и завершение) метод.

4. Имеет

Метод has можно использовать для проверки наличия ключа в коллекции. Параметр может быть строкой или массивом. Если массив передается в качестве параметра, все значения в массиве должны быть ключами в коллекции, прежде чем результат сможет вернуть значение true. В противном случае возвращается значение false.

 'Harry Potter', 
  'author' => 'J.K. Rowling', 
  'price' => 25
  ]);
$collection->has('author'); // true
$collection->has(['title', 'price']); // true
$collection->has(['price', 'rating']); // false

5. Взорваться

взорваться Метод объединения значений в коллекции. Функция этого метода такая же, как и в PHP implode Метод очень похож.

 'Gift card', 'price' => 50],
    ['title' => 'Chair', 'price' => 80],
]);
$collection->implode('title', ', ');
// Gift card, Chair

Если значение в коллекции представляет собой просто строку или число, вы просто передаете соединитель в качестве аргумента.

implode('-');
// 1-2-foo-3-bar

6. Толкай и тяни

есть доступ к push Метод добавляет элемент в конец коллекции. Если вам нужно добавить в начало коллекции, вы можете использовать метод добавить .

push(4);
$collection->all(); // [1, 2, 3, 4]

Метод pull удаляет данный ключ из коллекции и возвращает его соответствующее значение.

 'Harry Potter',
    'author' => 'J.K. Rowling',
    'price' => 25
]);
$collection->pull('author'); // 'J.K. Rowling'
$collection->all(); // ['title' => 'Harry Potter', 'price' => 25]

7. Способ перемешивания

Метод shuffle случайным образом сортирует элементы в коллекции.

shuffle();
$shuffled->all(); // [3, 1, 2] (random example)

8. Максимальный метод

Вы можете использовать метод max, чтобы получить максимальное значение в коллекции. Если коллекция содержит массивы, вы можете передать параметры, чтобы получить максимальное значение ключа.

 'Gift card', 'price' => 50],
    ['title' => 'Chair', 'price' => 80]
])->max('price'); // 80
$max = collect([1, 2, 3])->max(); // 3

9. Фильтр

есть доступ к фильтру Способ фильтрации коллекции. Этот метод принимает функцию обратного вызова в качестве аргумента. Определите правила фильтрации в функции обратного вызова. В коллекции можно оставить только те значения, которые соответствуют правилам.

filter(function ($value, $key) {
    return $value % 2 == 0;
});
$even_numbers->all(); // [2, 4, 6, 8, 10]

10. Ломтик

срез Метод может быть использован для разделения коллекции и возврата позиции индекса, указанной параметром, и значения после него. Массив возвращаемых значений будет содержать ключ исходного массива.

Обратите внимание, что в следующем примере переданный параметр равен 2. Это означает, что коллекция разделена по индексу 2 и нет Значения элемента 2 в массиве.

slice(2);
$sliced->all(); // [3, 4, 5]

Оригинал: “https://developpaper.com/sharing-10-useful-methods-of-laravel-5-8-sets/”