Редактирование элементов коллекции в Laravel 8: методы и примеры кода

Чтобы редактировать элементы коллекции в Laravel 8, вы можете использовать различные методы, предоставляемые классом Laravel Collection. Вот некоторые из наиболее часто используемых методов вместе с примерами кода:

  1. map(): метод карты обходит каждый элемент коллекции и применяет функцию обратного вызова для изменения элементов. Он возвращает новую коллекцию с измененными элементами.
$collection = collect([1, 2, 3, 4, 5]);
$modifiedCollection = $collection->map(function ($item) {
    return $item * 2;
});
$modifiedCollection->all(); // [2, 4, 6, 8, 10]
  1. transform(): метод преобразования изменяет элементы коллекции на месте. Он применяет функцию обратного вызова к каждому элементу и обновляет исходную коллекцию.
$collection = collect([1, 2, 3, 4, 5]);
$collection->transform(function ($item) {
    return $item * 2;
});
$collection->all(); // [2, 4, 6, 8, 10]
  1. each(): методeach перебирает коллекцию и применяет функцию обратного вызова к каждому элементу. Он не изменяет элементы, но позволяет выполнять действия над каждым элементом.
$collection = collect([1, 2, 3, 4, 5]);
$collection->each(function ($item) {
    // Perform actions on each item
    echo $item;
});
  1. mapInto(): метод mapInto позволяет преобразовать каждый элемент коллекции в новый класс или объект. Он возвращает новую коллекцию с преобразованными элементами.
$collection = collect([1, 2, 3, 4, 5]);
$modifiedCollection = $collection->mapInto(MyClass::class);
$modifiedCollection->all(); // [MyClass, MyClass, MyClass, MyClass, MyClass]
  1. transformInto(): метод TransformInto преобразует каждый элемент коллекции в новый класс или объект на месте. Он изменяет исходную коллекцию.
$collection = collect([1, 2, 3, 4, 5]);
$collection->transformInto(MyClass::class);
$collection->all(); // [MyClass, MyClass, MyClass, MyClass, MyClass]