This media is not supported in your browser
VIEW IN TELEGRAM
💡Советы и хитрости PhpStorm - Store Window Layout
Вам не нравится адаптировать положение окон инструментов при каждом новом проекте? (например, дерево файлов слева направо).
Вы можете сохранить их.
👉 @php_lib
Вам не нравится адаптировать положение окон инструментов при каждом новом проекте? (например, дерево файлов слева направо).
Вы можете сохранить их.
👉 @php_lib
👍4
Gemini API PHP Client
Клиент Google Gemini API для PHP позволяет вам использовать модель искусственного интеллекта Gemini.
Установка
Базовая генерация текста
https://github.com/gemini-api-php/client
👉 @php_lib
Клиент Google Gemini API для PHP позволяет вам использовать модель искусственного интеллекта Gemini.
Установка
composer require gemini-api-php/client
Базовая генерация текста
use GeminiAPI\Client;
use GeminiAPI\Resources\Parts\TextPart;
$client = new Client('GEMINI_API_KEY');
$response = $client->geminiPro()->generateContent(
new TextPart('PHP in less than 100 chars'),
);
print $response->text();
// PHP: A server-side scripting language used to create dynamic web applications.
// Easy to learn, widely used, and open-source.
https://github.com/gemini-api-php/client
👉 @php_lib
👍6
PHP. Как увеличить потребление памяти в 3 и более раз при работе с массивами
Известно, что PHP активно использует механизм copy-on-write. Это означает, что при попытке внутри функции что-то записать в переданные ей параметры, вначале будет сделана копия этой переменной, а уж затем в неё что-то запишется. Такая же ситуация наблюдается с итерацией массива с помощью foreach. Отсюда следует, что вам потребуется увеличить количество памяти для создания копии переменной и времени (ресурсов ЦП), чтобы всё это проделать. Т.е. возникнет пауза, прежде чем PHP перейдёт к следующей строчке вашей программы.
https://habr.com/ru/articles/746868/
👉 @php_lib
Известно, что PHP активно использует механизм copy-on-write. Это означает, что при попытке внутри функции что-то записать в переданные ей параметры, вначале будет сделана копия этой переменной, а уж затем в неё что-то запишется. Такая же ситуация наблюдается с итерацией массива с помощью foreach. Отсюда следует, что вам потребуется увеличить количество памяти для создания копии переменной и времени (ресурсов ЦП), чтобы всё это проделать. Т.е. возникнет пауза, прежде чем PHP перейдёт к следующей строчке вашей программы.
https://habr.com/ru/articles/746868/
👉 @php_lib
👍4
Показываем статистику в реальном времени с Laravel Volt
Для реализации этой возможности нам необходим метод отслеживания активных пользователей. Одним из вариантов является запись активных пользователей в таблицу базы данных. Каждая запись будет содержать идентификатор пользователя и временную метку, когда он был активен. Затем можно проверить активность за последние 5 минут или за любой другой желаемый промежуток времени. Другой способ заключается в наличии столбца "last_login_at" в таблице пользователей. Третий вариант - использование сервера web-sockets для получения подсчета активных пользователей в реальном времени.
В данной статье я остановлюсь на использовании Redis. Я люблю Redis за то, что это простая база данных in-memory, но при этом очень мощная. Я уже использовал этот метод, и он способен масштабироваться до тысяч и даже миллионов пользователей.
https://ahmedash.dev/blog/laravel-core-bits/volt-live-users-stats/
👉 @php_lib
Для реализации этой возможности нам необходим метод отслеживания активных пользователей. Одним из вариантов является запись активных пользователей в таблицу базы данных. Каждая запись будет содержать идентификатор пользователя и временную метку, когда он был активен. Затем можно проверить активность за последние 5 минут или за любой другой желаемый промежуток времени. Другой способ заключается в наличии столбца "last_login_at" в таблице пользователей. Третий вариант - использование сервера web-sockets для получения подсчета активных пользователей в реальном времени.
В данной статье я остановлюсь на использовании Redis. Я люблю Redis за то, что это простая база данных in-memory, но при этом очень мощная. Я уже использовал этот метод, и он способен масштабироваться до тысяч и даже миллионов пользователей.
https://ahmedash.dev/blog/laravel-core-bits/volt-live-users-stats/
👉 @php_lib
👍3
🚨 Совет по безопасности Livewire: Всегда выполняйте авторизацию своих действий! 🔒
Никогда не доверяйте пользовательскому вводу — всегда проверяйте права доступа перед выполнением важных операций. Если вы уже используете Gates и Policies, работа с Livewire покажется вам привычной! 🏡💪
#Laravel #Livewire
👉 @php_lib
Никогда не доверяйте пользовательскому вводу — всегда проверяйте права доступа перед выполнением важных операций. Если вы уже используете Gates и Policies, работа с Livewire покажется вам привычной! 🏡💪
#Laravel #Livewire
👉 @php_lib
👍4
Полезная статистика по Laravel: Доля рынка Laravel и тенденции развития в 2024 году
https://techjury.net/blog/laravel-statistics/
👉 @php_lib
https://techjury.net/blog/laravel-statistics/
👉 @php_lib
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Бесплатное IT-образование в 2024
Отобрали для вас полезные телеграм-каналы, которые помогут освоить программирование и другие IT-направления
Выбирайте нужное и подписывайтесь:
👩💻 С/С++: @Cpportal
📱 GitHub: @git_developer
🤓 Книги айти: @portalToIT
👩💻 Golang: @juniorGolang
👩💻 PHP: @PHPortal
👩💻 Моб. разработка: @MobDev
👩💻 Java: @Java_Iibrary
👩💻 Frontend: @FrontendPortal
⚙️ Backend: @BackendPortal
👩💻 Python: @PythonPortal
👩💻 C#: @KodBlog
🖥 Базы Данных & SQL: @SQL
👩💻 Разработка игр: @GameDevgx
👩💻 DevOps: @loose_code
🖥 Data Science: @DataSciencegx
🤔 Хакинг & ИБ: @cybersecinform
🐞 Тестирование: @QAPortal
📱 Маркетинг: @MarketingPortal
🖥 Дизайн: @PortalToDesign
➡️ Сохраняйте себе, чтобы не потерять
Отобрали для вас полезные телеграм-каналы, которые помогут освоить программирование и другие IT-направления
Выбирайте нужное и подписывайтесь:
🐞 Тестирование: @QAPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
PHP: путешествие от «Hello World» до фреймворков
PHP — это довольно популярный язык программирования. Много лет в интернете можно услышать утверждение, что PHP умирает. Однако язык до сих пор жив и активно используется. Если вы занимаетесь выбором языка для изучения в 2024 году, возможно, вам стоит обратить внимание на другие языки программирования, у языка появилось много достойных и более популярных конкурентов. Но если вы, всё-таки, решились и начали осваивать PHP, то этот материал для вас.
https://habr.com/ru/articles/854488/
👉 @php_lib
PHP — это довольно популярный язык программирования. Много лет в интернете можно услышать утверждение, что PHP умирает. Однако язык до сих пор жив и активно используется. Если вы занимаетесь выбором языка для изучения в 2024 году, возможно, вам стоит обратить внимание на другие языки программирования, у языка появилось много достойных и более популярных конкурентов. Но если вы, всё-таки, решились и начали осваивать PHP, то этот материал для вас.
https://habr.com/ru/articles/854488/
👉 @php_lib
Хабр
PHP: путешествие от «Hello World» до фреймворков
PHP — это довольно популярный язык программирования. Много лет в интернете можно услышать утверждение, что PHP умирает. Однако язык до сих пор жив и активно используется. Если вы занимаетесь выбором...
👍5
Совет по Laravel 💡
Преобразуйте свои массивы в коллекции, чтобы получить доступ ко всем полезным функциям для работы с вашими данными.
👉 @php_lib
Преобразуйте свои массивы в коллекции, чтобы получить доступ ко всем полезным функциям для работы с вашими данными.
👉 @php_lib
👍5👎1
Как измерить производительность в приложениях Laravel
В данной статье предлагают практические стратегии для оптимизации работы приложений на Laravel. В ней рассматриваются типичные проблемы, такие как N+1 запросы, отсутствие индексов в базе данных и неэффективное использование ресурсов в API. Автор объясняет, как выявлять и исправлять эти проблемы с помощью инструментов, таких как eager loading, использование метода
https://martinjoo.dev/how-to-measure-performance-in-laravel-apps
👉 @php_lib
В данной статье предлагают практические стратегии для оптимизации работы приложений на Laravel. В ней рассматриваются типичные проблемы, такие как N+1 запросы, отсутствие индексов в базе данных и неэффективное использование ресурсов в API. Автор объясняет, как выявлять и исправлять эти проблемы с помощью инструментов, таких как eager loading, использование метода
whenLoaded
в ресурсах и правильная индексация. В статье подчеркивается важность управления запросами к базе данных и приводятся примеры для облегчения применения этих методов на практике.https://martinjoo.dev/how-to-measure-performance-in-laravel-apps
👉 @php_lib
👍5
⚡️Трансляция главного зала HighLoad++ 2024: спикеры из VK, Яндекс, hh.ru, Сбер и других компаний!
🖐️ Подключайтесь к открытой трансляции бесплатно.
HighLoad++ 2024 — это конференция, которая определяет будущее высоконагруженных систем. 2 и 3 декабря 2024 года все желающие могут бесплатно посмотреть онлайн-трансляцию главного зала. Это стало возможно благодаря поддержке генерального партнера конференции — VK.
Среди спикеров:
🔹 Денис Дерюгин (VK, ВКонтакте): расскажет об эволюции хранилища ВКонтакте за 18 лет.
🔹 Алексей Николаевский (Яндекс): представит сравнение транзакций в Apache Kafka и YDB.
🔹 Владимир Комаров (СберТех): расскажет о геораспределённых транзакциях, их теории и практическом применении.
🔹 Станислав Кондратьев (hh.ru): поделится опытом выделения микросервиса из 15-летнего монолита.
Приятного просмотра!
#реклама
О рекламодателе
🖐️ Подключайтесь к открытой трансляции бесплатно.
HighLoad++ 2024 — это конференция, которая определяет будущее высоконагруженных систем. 2 и 3 декабря 2024 года все желающие могут бесплатно посмотреть онлайн-трансляцию главного зала. Это стало возможно благодаря поддержке генерального партнера конференции — VK.
Среди спикеров:
🔹 Денис Дерюгин (VK, ВКонтакте): расскажет об эволюции хранилища ВКонтакте за 18 лет.
🔹 Алексей Николаевский (Яндекс): представит сравнение транзакций в Apache Kafka и YDB.
🔹 Владимир Комаров (СберТех): расскажет о геораспределённых транзакциях, их теории и практическом применении.
🔹 Станислав Кондратьев (hh.ru): поделится опытом выделения микросервиса из 15-летнего монолита.
Приятного просмотра!
#реклама
О рекламодателе
Laravel Clockwork: Подробный обзор отладки, профилирования и лучших практик
Автор подробно рассматривает инструмент для отладки и профилирования Laravel Clockwork. Она объясняет, как установить и настроить Clockwork, а также как интегрировать его с расширением для Chrome для анализа запросов и их производительности. Описываются различные вкладки в Clockwork, такие как запросы, база данных, логи, сессии и маршруты. В статье также проводится сравнение с другими инструментами, такими как Laravel Telescope и Laravel Debugbar. Это руководство поможет улучшить производительность и устранить узкие места в приложениях Laravel.
https://qirolab.com/posts/laravel-clockwork-a-deep-dive-into-debugging-profiling-skills-and-best-practices-1705314512
👉 @php_lib
Автор подробно рассматривает инструмент для отладки и профилирования Laravel Clockwork. Она объясняет, как установить и настроить Clockwork, а также как интегрировать его с расширением для Chrome для анализа запросов и их производительности. Описываются различные вкладки в Clockwork, такие как запросы, база данных, логи, сессии и маршруты. В статье также проводится сравнение с другими инструментами, такими как Laravel Telescope и Laravel Debugbar. Это руководство поможет улучшить производительность и устранить узкие места в приложениях Laravel.
https://qirolab.com/posts/laravel-clockwork-a-deep-dive-into-debugging-profiling-skills-and-best-practices-1705314512
👉 @php_lib
👍5
Совет по Laravel 💡
Данные загружаются быстрее, если целевое значение является целым числом.
Используйте
👉 @php_lib
Данные загружаются быстрее, если целевое значение является целым числом.
Используйте
𝘄𝗵𝗲𝗿𝗲𝗜𝗻𝘁𝗲𝗴𝗲𝗿𝗜𝗻𝗥𝗮𝘄()
вместо метода 𝘄𝗵𝗲𝗿𝗲𝗜𝗻()
, чтобы быстрее загружать данные, когда целевое значение является целым числом.👉 @php_lib
👍9💩2
Совет по Laravel 💡
Знаете ли вы... Во время итерации в цикле foreach внутри цикла будет доступна переменная
👉 @php_lib
Знаете ли вы... Во время итерации в цикле foreach внутри цикла будет доступна переменная
$loop
. Эта переменная предоставляет доступ к некоторым полезным битам информации.👉 @php_lib
👍8
Как реализовать простую очередь в Symfony
Symfony - это популярный PHP-фреймворк, который предоставляет множество функций и компонентов для создания веб-приложений. Одним из таких компонентов является компонент Messenger, который позволяет отправлять и получать сообщения между различными частями вашего приложения или между различными приложениями. В этой статье мы рассмотрим, как использовать компонент Messenger для реализации простой системы очередей, используя Redis в качестве транспортного уровня.
1️⃣Установка необходимых пакетов: Используйте Composer для установки компонента Symfony Messenger и адаптера Redis.
2️⃣Настройка транспорта: Настройте подключение к серверу Redis в файле .env, указав расположение сервера и желаемое имя очереди.
3️⃣Создание сообщения и обработчика: Используйте команды Symfony console для создания классов сообщения и соответствующего обработчика. Эти классы представляют данные для отправки и логику, которая будет выполнена при получении сообщения.
4️⃣Маршрутизация сообщения к транспорту: Настройте компонент Messenger для связывания класса сообщения с желаемым транспортом в файле messenger.yaml.
5️⃣Отправка сообщения: Используйте службу MessageBusInterface для отправки сообщений из различных частей приложения, таких как контроллеры или службы.
6️⃣Получение сообщения: Используйте команду messenger:consume, чтобы запустить рабочий процесс, прослушивающий указанный транспорт и выполняющий соответствующий обработчик. Можно запускать несколько рабочих процессов параллельно для увеличения пропускной способности.
https://dev.to/daniyaljavani/how-to-implement-a-simple-queue-in-symfony-530a
👉 @php_lib
Symfony - это популярный PHP-фреймворк, который предоставляет множество функций и компонентов для создания веб-приложений. Одним из таких компонентов является компонент Messenger, который позволяет отправлять и получать сообщения между различными частями вашего приложения или между различными приложениями. В этой статье мы рассмотрим, как использовать компонент Messenger для реализации простой системы очередей, используя Redis в качестве транспортного уровня.
1️⃣Установка необходимых пакетов: Используйте Composer для установки компонента Symfony Messenger и адаптера Redis.
2️⃣Настройка транспорта: Настройте подключение к серверу Redis в файле .env, указав расположение сервера и желаемое имя очереди.
3️⃣Создание сообщения и обработчика: Используйте команды Symfony console для создания классов сообщения и соответствующего обработчика. Эти классы представляют данные для отправки и логику, которая будет выполнена при получении сообщения.
4️⃣Маршрутизация сообщения к транспорту: Настройте компонент Messenger для связывания класса сообщения с желаемым транспортом в файле messenger.yaml.
5️⃣Отправка сообщения: Используйте службу MessageBusInterface для отправки сообщений из различных частей приложения, таких как контроллеры или службы.
6️⃣Получение сообщения: Используйте команду messenger:consume, чтобы запустить рабочий процесс, прослушивающий указанный транспорт и выполняющий соответствующий обработчик. Можно запускать несколько рабочих процессов параллельно для увеличения пропускной способности.
https://dev.to/daniyaljavani/how-to-implement-a-simple-queue-in-symfony-530a
👉 @php_lib
👍4
✨ Советы по Laravel ✨
Если вы создаете API в своем проекте:
🪐 Применяйте версионирование в самом первом релизе
🪐 Поддерживайте чистоту в routes/api.php, создавая разные файлы маршрутов для каждой версии👇
🧹 Более чистый код, 📈 Лучшие результаты
👉 @php_lib
Если вы создаете API в своем проекте:
🪐 Применяйте версионирование в самом первом релизе
🪐 Поддерживайте чистоту в routes/api.php, создавая разные файлы маршрутов для каждой версии👇
🧹 Более чистый код, 📈 Лучшие результаты
👉 @php_lib
👍10
👩💻 PHP 8.4 уже здесь! Что нового? Мы всё расскажем.
💛 Узнайте, какие функции добавлены, как они изменят код и ускорят работу.
💛 Готовьтесь к апгрейду знаний: от разборов новых возможностей до лайфхаков применения!
Спикер Александр Пряхин — технический руководитель юнита в Авито, ITIL4 Certified.
Приходите на открытый урок 13 января в 20:00 мск. Участники получат скидку на курс «PHP Developer. Professional».
➡️ Регистрация открыта: https://vk.cc/cH2hV3
Спикер Александр Пряхин — технический руководитель юнита в Авито, ITIL4 Certified.
Приходите на открытый урок 13 января в 20:00 мск. Участники получат скидку на курс «PHP Developer. Professional».
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Совет по PHP/Laravel 💡
Вместо того чтобы выполнять цикл `
👉 @php_lib
Вместо того чтобы выполнять цикл `
foreach
` по массиву для поиска значения записи, вы можете использовать метод Laravel Collection `contains()`
.👉 @php_lib
👍6
💬 Хотите написать свой чат на PHP? Узнайте, как сделать это за один вечер!
📌 22 января на бесплатном вебинаре:
— Разберем WebSocket и лонг-поллинг.
— Научимся использовать Centrifugo для чатов.
— Покажем рабочие примеры и лучшие практики.
Вы освоите современные подходы и расширите свои скиллы PHP-разработчика.
➡️ Регистрируйтесь прямо сейчас: https://vk.cc/cHiD9m
Урок проходит перед стартом курса «PHP Developer. Professional» — участники получат скидку на большое обучение.
— Разберем WebSocket и лонг-поллинг.
— Научимся использовать Centrifugo для чатов.
— Покажем рабочие примеры и лучшие практики.
Вы освоите современные подходы и расширите свои скиллы PHP-разработчика.
Урок проходит перед стартом курса «PHP Developer. Professional» — участники получат скидку на большое обучение.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM