array_column() — это очень удобная встроенная функция PHP, которая извлекает индекс из списка массивов или публичное свойство из списка объектов.
Третий аргумент array_column() — это ключ, который будет использоваться для ссылки на значение в результирующем массиве. Это очень удобно для превращения массива в хэш.
Обратите внимание, что дублирующиеся ключи будут перезаписаны.
Третий аргумент array_column() — это ключ, который будет использоваться для ссылки на значение в результирующем массиве. Это очень удобно для превращения массива в хэш.
Обратите внимание, что дублирующиеся ключи будут перезаписаны.
👍30
Как обрабатывать большие массивы данных в Laravel без дефицита памяти
Laravel предоставляет несколько полезных методов, которые помогут вам обрабатывать данные небольшими кусками, что экономит память и ускоряет работу приложения. Здесь показано, как использовать
Laravel предоставляет несколько полезных методов, которые помогут вам обрабатывать данные небольшими кусками, что экономит память и ускоряет работу приложения. Здесь показано, как использовать
chunk()
, chunkById()
и Lazy Collections для эффективной обработки больших наборов данных в Laravel.DEV Community
How to Handle Large Datasets in Laravel Without Running Out of Memory
How to Handle Large Datasets in Laravel Without Running Out of Memory When working with...
👍5
Какие нововведения из 8.4 планируете активно использовать?👇
😁13
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ Напоминаем: у нас можно (и нужно) купить рекламу
→ Более 60 телеграм-каналов по всем направлениям IT
→ Почти 1,2 миллиона аудитории
→ Собственное медиа и сайт с DAU 25 000 — можем усилить продвижение
→ Классные email-рассылки
→ И, конечно же, крутые контент-менеджеры, которые сделают нативную интеграцию/придумают виральный пост/реализуют любые контентные предпочтения
Для заказа пишите сюда: @proglib_adv
→ Более 60 телеграм-каналов по всем направлениям IT
→ Почти 1,2 миллиона аудитории
→ Собственное медиа и сайт с DAU 25 000 — можем усилить продвижение
→ Классные email-рассылки
→ И, конечно же, крутые контент-менеджеры, которые сделают нативную интеграцию/придумают виральный пост/реализуют любые контентные предпочтения
Для заказа пишите сюда: @proglib_adv
🔥5🥱4😢3❤1
Forwarded from Библиотека собеса по PHP | вопросы с собеседований
Чем отличается require от require-dev?
require: Этот раздел определяет зависимости, которые необходимы для нормального функционирования вашего приложения в рабочем окружении. Это могут быть библиотеки, фреймворки или другие компоненты, без которых ваше приложение не будет работать правильно.
require-dev: Этот раздел определяет зависимости, необходимые исключительно для разработки и тестирования вашего приложения. Обычно это инструменты для тестирования (например, PHPUnit), фиктивные данные для тестирования (например, Faker), инструменты для отладки (например, Xdebug) и т. д. Эти зависимости не включаются в окружение продакшена (production environment), чтобы уменьшить размер и сложность установки.
Когда вы устанавливаете пакет с помощью Composer, по умолчанию устанавливаются зависимости из обоих разделов require и require-dev. Однако при использовании опции --no-dev в команде composer install или composer update, Composer устанавливает только зависимости из раздела require, пропуская require-dev. Это особенно полезно при развертывании приложения в продакшен окружении, когда не нужны инструменты и зависимости, предназначенные только для разработки.
require: Этот раздел определяет зависимости, которые необходимы для нормального функционирования вашего приложения в рабочем окружении. Это могут быть библиотеки, фреймворки или другие компоненты, без которых ваше приложение не будет работать правильно.
require-dev: Этот раздел определяет зависимости, необходимые исключительно для разработки и тестирования вашего приложения. Обычно это инструменты для тестирования (например, PHPUnit), фиктивные данные для тестирования (например, Faker), инструменты для отладки (например, Xdebug) и т. д. Эти зависимости не включаются в окружение продакшена (production environment), чтобы уменьшить размер и сложность установки.
Когда вы устанавливаете пакет с помощью Composer, по умолчанию устанавливаются зависимости из обоих разделов require и require-dev. Однако при использовании опции --no-dev в команде composer install или composer update, Composer устанавливает только зависимости из раздела require, пропуская require-dev. Это особенно полезно при развертывании приложения в продакшен окружении, когда не нужны инструменты и зависимости, предназначенные только для разработки.
👍6
🎉 Розыгрыш от Proglib Academy и DigitalRazor!
С 27 ноября по 27 декабря у вас есть шанс не только прокачать свои навыки, но и выиграть ПК при покупке любого курса Академии!
🎁 Призы для участников акции:
– Игровой ПК DigitalRazor ProGaming
– VIP-пакет курса Proglib Academy
💡 Как принять участие?
Купите любой курс Proglib Academy с 27 ноября по 27 декабря и получите шанс выиграть мощный ПК.
Приобретите технику DigitalRazor — участвуйте в розыгрыше VIP курса.
📅 Вместе с DigitalRazor мы создали спецпредложение -50% на курсы до 30 ноября, чтобы вы могли начать обучение на более выгодных условиях.
Выбрать курс
С 27 ноября по 27 декабря у вас есть шанс не только прокачать свои навыки, но и выиграть ПК при покупке любого курса Академии!
🎁 Призы для участников акции:
– Игровой ПК DigitalRazor ProGaming
– VIP-пакет курса Proglib Academy
💡 Как принять участие?
Купите любой курс Proglib Academy с 27 ноября по 27 декабря и получите шанс выиграть мощный ПК.
Приобретите технику DigitalRazor — участвуйте в розыгрыше VIP курса.
📅 Вместе с DigitalRazor мы создали спецпредложение -50% на курсы до 30 ноября, чтобы вы могли начать обучение на более выгодных условиях.
Выбрать курс
😁2
Alice, Nelmio, Hautelook, Faker — Как обновить Doctrine Fixtures
Работа с обновлением Doctrine Fixtures связана с синхронизацией сразу нескольких пакетов на GitHub, что делает задачу сложной и трудоемкой. Автор делится опытом этого процесса и описывает шаги, которые помогут выполнить обновление максимально эффективно.
План обновления
Среди основных изменений:
🔸hautelook/alice-bundle: обновление с версии 1.* до 2.*
🔸nelmio/alice: переход с версии 2.* на 3.*
🔸fzaninotto/faker заменяется на fakerphp/faker
🔸doctrine/data-fixtures: обновление с версии 1.5 до 1.7
🔸doctrine/mongodb-odm-bundle: обновление с версии 3.* до 5.*
Работа с обновлением Doctrine Fixtures связана с синхронизацией сразу нескольких пакетов на GitHub, что делает задачу сложной и трудоемкой. Автор делится опытом этого процесса и описывает шаги, которые помогут выполнить обновление максимально эффективно.
План обновления
Среди основных изменений:
🔸hautelook/alice-bundle: обновление с версии 1.* до 2.*
🔸nelmio/alice: переход с версии 2.* на 3.*
🔸fzaninotto/faker заменяется на fakerphp/faker
🔸doctrine/data-fixtures: обновление с версии 1.5 до 1.7
🔸doctrine/mongodb-odm-bundle: обновление с версии 3.* до 5.*
Tomasvotruba
Alice, Nelmio, Hautelook, Faker - How to upgrade Doctrine Fixtures - Part 1
Upgrading Doctrine Fixtures can be challenging work. It requires the coordination of four different package groups on Github. One cannot be upgraded without the other.
We first prepare for the jump, then take the leap with confidence. I'm writing this…
We first prepare for the jump, then take the leap with confidence. I'm writing this…
👏1
Рекордсмены в Fusc последовательности
Анализ подходов к решению олимпиадной задачи по программированию, связанной с диатомической числовой последовательностью Штерна.
Анализ подходов к решению олимпиадной задачи по программированию, связанной с диатомической числовой последовательностью Штерна.
Хабр
Рекордсмены в Fusc последовательности
Закончились рабочие будни. Появилось настроение отметить завершение очередного аврала в череде поддержки и доработки проекта автоматизации бизнес процессов организации, где я мотаю срок программистом....
👏3👍1
🚀 Там биткойн летит вверх, и в связи с этим вопрос:
💬 Вкладываетесь в криптовалюты?
❤️ — да, в биткойн
👍 — да, в другую крипту
👾 — нет
#интерактив
💬 Вкладываетесь в криптовалюты?
❤️ — да, в биткойн
👍 — да, в другую крипту
👾 — нет
#интерактив
👾102👍20❤13🌚3
💡 200 идей для проектов
На Dev.to собрали подборку из 200 идей для проектов с примерами на любой уровень: от базовых до продвинутых. Это вдохновение для тех, кто ищет: как заполнить свой GitHub, заполнить портфолио или просто прокачаться.
Что внутри:
▪️ Начальные проекты. Здесь можно найти простые задачи, вроде создания калькулятора или генератора случайных чисел.
▪️ Средний уровень. Проекты вроде чат-приложения, систем для отслеживания задач.
▪️ Продвинутые проекты. Решения с использованием сложных алгоритмов, разработка на основе ИИ, системы управления пользователями и многое другое.
На Dev.to собрали подборку из 200 идей для проектов с примерами на любой уровень: от базовых до продвинутых. Это вдохновение для тех, кто ищет: как заполнить свой GitHub, заполнить портфолио или просто прокачаться.
Что внутри:
▪️ Начальные проекты. Здесь можно найти простые задачи, вроде создания калькулятора или генератора случайных чисел.
▪️ Средний уровень. Проекты вроде чат-приложения, систем для отслеживания задач.
▪️ Продвинутые проекты. Решения с использованием сложных алгоритмов, разработка на основе ИИ, системы управления пользователями и многое другое.
👍13👏3😍2
🎓💻🔍 Как не попасть на инфоцыган: 8 критериев выбора онлайн-школы
Не знаете, как выбрать онлайн-школу с качественной учебной программой? Мы собрали 8 основных критериев, которые помогут вам найти идеальное место для обучения.
👉 Читать статью
Не знаете, как выбрать онлайн-школу с качественной учебной программой? Мы собрали 8 основных критериев, которые помогут вам найти идеальное место для обучения.
👉 Читать статью
😁3👾2❤1
#дайджест новостей по PHP за неделю:
🔎Выпущен CakePHP 5.1.2 — Улучшения: В списке команд консоли команды app и cakephp теперь отображаются над названиями плагинов. Добавлены описания команд для всех команд фреймворка. Исправлена утечка дескрипторов файлов в StubConsoleOutput и многое другое.
🔎Динамические конструкторы кэша, базы данных и почты в Laravel 11.31 — Команда Laravel выпустила версию 11.31, в которой появились конструкторы динамического кэша/базы данных/почты, хранилище токенов кэша, удобный метод
🔎Laravel Forge добавляет интеграцию с Statamic
🔎Выпущен Symfony 7.2.0-RC1 — Только что состоялся релиз Symfony 7.2.0-RC1. Вот список наиболее важных изменений по сравнению с 7.2.0-BETA2.
🔎Неделя Symfony #934 (18-24 ноября 2024 года)
🔎Выпущен CakePHP 5.1.2 — Улучшения: В списке команд консоли команды app и cakephp теперь отображаются над названиями плагинов. Добавлены описания команд для всех команд фреймворка. Исправлена утечка дескрипторов файлов в StubConsoleOutput и многое другое.
🔎Динамические конструкторы кэша, базы данных и почты в Laravel 11.31 — Команда Laravel выпустила версию 11.31, в которой появились конструкторы динамического кэша/базы данных/почты, хранилище токенов кэша, удобный метод
URL::forceHttps()
и многое другое.🔎Laravel Forge добавляет интеграцию с Statamic
🔎Выпущен Symfony 7.2.0-RC1 — Только что состоялся релиз Symfony 7.2.0-RC1. Вот список наиболее важных изменений по сравнению с 7.2.0-BETA2.
🔎Неделя Symfony #934 (18-24 ноября 2024 года)
🎉3👍2😁1
Доступ к базам данных в PhpStorm
PhpStorm предоставляет встроенные инструменты для работы с базами данных, предлагая удобный интерфейс для их управления. Эти функции позволяют работать с базами данных прямо в редакторе, без необходимости переключаться между приложениями. Множество возможностей, позаимствованных из DataGrip, интегрированы в PhpStorm, что делает его мощным инструментом для разработчиков.
🔗 Подключение к базе данных
Для подключения к базе данных нужно воспользоваться встроенными инструментами PhpStorm. Например, для SQLite:
🔸Создайте Laravel-приложение и выберите базу данных.
🔸Откройте окно инструментов баз данных.
🔸Укажите путь к файлу SQLite.
После этого база данных будет подключена, и её содержимое станет доступным для работы.
👁️ Просмотр данных
Данные таблиц можно просматривать, дважды кликнув по нужной таблице. Это позволяет сразу увидеть содержимое, как это сделано в примере с таблицей пользователей.
🔄 Удобство трансформации данных
Одной из полезных функций является возможность транспонирования таблиц:
Строки и столбцы можно поменять местами.
Это упрощает анализ данных для конкретной записи.
🖊️ Консоль запросов
Встроенная консоль для запросов предоставляет:
✨ Автозаполнение.
🎨 Подсветку синтаксиса.
🤖 Поддержку AI-инструментов, таких как Copilot.
Консоль сохраняет выполненные запросы между сессиями, что удобно для повторного использования. Также можно задавать параметры, которые легко менять перед запуском запросов.
📤 Экспорт данных
PhpStorm позволяет экспортировать данные таблиц в форматах:
🔸CSV,
🔸JSON,
🔸Markdown и других.
Например, выбрав Markdown, можно скопировать таблицу и вставить её в документацию в готовом виде. Также можно настроить собственные экстракторы данных.
📊 Автогенерация диаграмм
PhpStorm поддерживает автоматическое создание диаграмм базы данных. Они помогают визуализировать структуру базы и связи между таблицами.
PhpStorm предоставляет встроенные инструменты для работы с базами данных, предлагая удобный интерфейс для их управления. Эти функции позволяют работать с базами данных прямо в редакторе, без необходимости переключаться между приложениями. Множество возможностей, позаимствованных из DataGrip, интегрированы в PhpStorm, что делает его мощным инструментом для разработчиков.
🔗 Подключение к базе данных
Для подключения к базе данных нужно воспользоваться встроенными инструментами PhpStorm. Например, для SQLite:
🔸Создайте Laravel-приложение и выберите базу данных.
🔸Откройте окно инструментов баз данных.
🔸Укажите путь к файлу SQLite.
После этого база данных будет подключена, и её содержимое станет доступным для работы.
👁️ Просмотр данных
Данные таблиц можно просматривать, дважды кликнув по нужной таблице. Это позволяет сразу увидеть содержимое, как это сделано в примере с таблицей пользователей.
🔄 Удобство трансформации данных
Одной из полезных функций является возможность транспонирования таблиц:
Строки и столбцы можно поменять местами.
Это упрощает анализ данных для конкретной записи.
🖊️ Консоль запросов
Встроенная консоль для запросов предоставляет:
✨ Автозаполнение.
🎨 Подсветку синтаксиса.
🤖 Поддержку AI-инструментов, таких как Copilot.
Консоль сохраняет выполненные запросы между сессиями, что удобно для повторного использования. Также можно задавать параметры, которые легко менять перед запуском запросов.
📤 Экспорт данных
PhpStorm позволяет экспортировать данные таблиц в форматах:
🔸CSV,
🔸JSON,
🔸Markdown и других.
Например, выбрав Markdown, можно скопировать таблицу и вставить её в документацию в готовом виде. Также можно настроить собственные экстракторы данных.
📊 Автогенерация диаграмм
PhpStorm поддерживает автоматическое создание диаграмм базы данных. Они помогают визуализировать структуру базы и связи между таблицами.
👏5🥱4😢1
Saloon
Saloon — это библиотека PHP, которая предоставляет вам инструменты для создания простых интеграций API и SDK. Saloon перемещает ваши запросы API в повторно используемые классы, чтобы вы могли хранить все свои конфигурации API в одном месте. Его можно легко настроить с помощью плагинов, но он поставляется предварительно настроенным для вас, поэтому вы можете сразу же приступить к отправке запросов API. Saloon поставляется со множеством интересных функций, таких как запись запросов в ваших тестах, кеширование, OAuth2 и нумерация страниц.
Saloon — это библиотека PHP, которая предоставляет вам инструменты для создания простых интеграций API и SDK. Saloon перемещает ваши запросы API в повторно используемые классы, чтобы вы могли хранить все свои конфигурации API в одном месте. Его можно легко настроить с помощью плагинов, но он поставляется предварительно настроенным для вас, поэтому вы можете сразу же приступить к отправке запросов API. Saloon поставляется со множеством интересных функций, таких как запись запросов в ваших тестах, кеширование, OAuth2 и нумерация страниц.
GitHub
GitHub - saloonphp/saloon: 🤠 Build beautiful API integrations and SDKs with Saloon
🤠 Build beautiful API integrations and SDKs with Saloon - saloonphp/saloon
👍3
Что такое анонимная функция в PHP и как её использовать?
В PHP анонимные функции, также известные как замыкания (closures), это функции без указанного имени. Они определяются с использованием ключевого слова function, за которым следуют необходимые параметры и тело функции, без указания имени функции. Анонимные функции могут быть назначены переменным, переданы в качестве аргументов другим функциям или использованы как возвращаемые значения из других функций. Они особенно полезны для определения небольших, самодостаточных логических блоков, которые могут использоваться только один раз или в ограниченном контексте.
#вопросы_с_собеседований
В PHP анонимные функции, также известные как замыкания (closures), это функции без указанного имени. Они определяются с использованием ключевого слова function, за которым следуют необходимые параметры и тело функции, без указания имени функции. Анонимные функции могут быть назначены переменным, переданы в качестве аргументов другим функциям или использованы как возвращаемые значения из других функций. Они особенно полезны для определения небольших, самодостаточных логических блоков, которые могут использоваться только один раз или в ограниченном контексте.
#вопросы_с_собеседований
👍9
Нужно динамически настраивать почтовые программы? Метод
Динамическая настройка почтовых ящиков идеально подходит для многопользовательских приложений, пользовательских почтовых провайдеров или любых других сценариев, где почтовые настройки должны быть сконфигурированы во время выполнения.
Mail::build
в Laravel позволяет создавать почтовые программы на лету!Динамическая настройка почтовых ящиков идеально подходит для многопользовательских приложений, пользовательских почтовых провайдеров или любых других сценариев, где почтовые настройки должны быть сконфигурированы во время выполнения.
👍5👏5😢3😁2👾1