• Главная
  • Новости
  • Статьи
  • Книги
  • Видео
  • Хабы
  • Каналы
  • RU
  • EN
  • 19 May, 25
  • О Проекте
  • Контакты
ДотДев
  • Главная
  • Новости
  • Статьи
  • Книги
  • Видео
  • Хабы
  • Каналы
  1. ДотДев
  2. Видео
  3. LazyCollections и PHP генераторы. Как применять на практике

LazyCollections и PHP генераторы. Как применять на практике

Laravel * PHP *
  • 27 Oct, 23
  • 0 комментарии
  • 531 просмотры

Этот ролик посвящен PHP генераторам и LazyCollection. На примере посмотрим как генераторы могут оптимизировать работу памяти. Уделим внимание где используются генераторы в laravel, как нам их удобно использовать и когда.

#LazyCollections#PHP#laravel#cutcode
---------------------------------------------------------------------------------
🚀📹👨‍🏫 Как насчет прокачки своих навыков с помощью наших обучающих видеокурсов по web-разработке? Переходи на мой сайт 👇
https://learn.cutcode.dev/?utm_source=yt

❗️❗️❗️Присоединяйся к нашему комьюнити в телеграм - там и советом помогут и много интересного - https://goo.su/dsGP7PI
---------------------------------------------------------------------------------

Всех поклонников laravel я приветствую на канале CutCode! Сегодня мы поговорим про PHP генераторы. Про это страшное слово vield и снова реализуем пример, который делают все и каждый в обучающих роликах и статьях. С огромным массивом, который сформирован функцией Range. Но друзья я вас обманываю и на самом деле мы этим заниматься не будем. Есть тысячи уже роликов о генераторах и их чудесном влиянии на память. Все они в рамках примера с массивом, построенным на функции Range. То же самое и про статьи, и про саму документацию. И все вы уже много раз это видели. А кто не видел рекомендую посмотреть или почитать. Но думаю в итоге после изучения вы останетесь довольны - все понял. Но где применять, когда применять все еще знать не будете. И спустя пару часов вовсе о них забудете. Поэтому мы чуток их суть обсудим, буквально парой предложений, но поговорим о конкретном применении. Где они используются в laravel, как нам их удобно использовать и когда. Ну что ж, погнали!
Друзья проблемка. Нам скажем нужно повзаимодействовать с моделями и на их основе что-то посчитать к примеру. И нужны именно модели с кастами и прочим. У нас есть сущность - мы забираем все записи - в данном случае там 10к записей. Сам процесс мы делаем где-нибудь в консольной команде по расписанию и что-то в какой-то сущности высчитывая. В итоге такой запрос у нас на выходе сформируют коллекцию из десяти тысяч моделей. Обратите внимание сколько памяти нам под это потребовалось - аж 30 мегабайт. А здесь только 10к записей. Если говорить о SQL запросах и query builder, то нам на помощь может прийти метод cursor. Давайте им воспользуемся вместо All, а далее углубимся в сам метод. И здесь мы увидим что работает он как раз на генератора вот наш любимый vield. А помогает ему не просто коллекция а Lazy коллекция.


---------------------------------------------------------------------------------
📹 делитесь этим видео с друзьями:
https://www.youtube.com/watch?v=vkAsNffJ_ZY

🔔 подпишитесь на YouTube-канал: https://www.youtube.com/c/CutCodeRu?sub_confirmation=1

📼 Курс по Laravel с нуля:
https://www.youtube.com/watch?v=phTSw6XDATw&list=PLTucyHptHtTkUbXaikXEmCWL8GradRx9I

НАЗВАНИЕНАЗВАНИЕНАЗВАНИЕ

---------------------------------------------------------------------------------
🔗 наш сайт: https://cutcode.dev/?utm_source=yt
📱 Наш telegram-канал: https://t.me/laravel_cutcode

Обучение Web PHP Видео Youtube SQL Laravel
Источник материала https://www.youtube.com/watch?v=vkAsNffJ_ZY

Джо Блэк
Джо Блэк

Автор новостей IT/Tech

Комментарии
  • 1000+
    Подписки
  • 1000+
    Фолловеры
  • 1000+
    Фолловеры
Тэги
  • Python (230)
  • Программирование (181)
  • 2022 (170)
  • 2020 (151)
  • 2023 (149)
  • 2021 (128)
  • Java (128)
  • Linux (119)
  • 2019 (117)
  • Алгоритмы (112)
  • JavaScript (100)
  • Сети (99)
  • Api (92)
  • Инструменты (90)
  • Web (86)
  • Applications (79)
  • Microsoft (73)
  • PHP (73)
  • Google (72)
  • Обучение (72)
  • 2018 (68)
  • SQL (68)
  • C# (66)
  • ИИ (63)
  • Windows (60)
  • HTML (59)
  • 2017 (55)
  • C++ (53)
  • Базы данных (53)
  • Machine Learning (51)
  • Kubernetes (50)
  • Go (47)
  • Бизнес (47)
  • Паттерны (46)
  • CSS (44)
  • Проекты (42)
  • 2016 (41)
  • ИБ (41)
  • ОС (40)
  • .NET (39)
  • DevOps (39)
  • Docker (39)
  • React (39)
  • Проектирование (38)
  • Тестирование (38)
  • Математика (36)
  • Android (35)
  • Структуры Данных (35)
  • Информатика (34)
  • Framework (32)
Программирование
  • Python
  • Go
  • C#
  • Java
  • JavaScript
  • TypeScript
  • PHP
  • Ruby
  • Kotlin
  • Rust
  • C++
  • C
Скилы
  • Обучение
  • Инструменты
  • Истории
  • Data Science
  • Git
  • Тестирование
  • Проектирование
  • Алгоритмы
Софт
  • Linux
  • Windows
  • Android
  • iOS
  • Архитектура и OS
  • Базы данных
  • Backend
  • Frontend
Дизайн
  • UI/UX
  • Дизайн
  • Интерфейсы
  • Графический Дизайн
  • Game Design
Железо
  • Устройства и IoT
  • Компьютеры
  • Гаджеты
Другое
  • Бизнес
  • Стартап
  • Трудоустройство
  • Общее
  • Разное
Контакты
  • Условия использования
  • Политика конфиденциальности
  • О Проекте
  • Контакты

© 2025. ДотДев — Информационный ресурс для IT-специалистов.