Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter
10.9K subscribers
1.6K photos
27 videos
26 files
4.35K links
Все самое полезное для пхпшника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/bca892d6

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5d13cd6fa92100ee6f68b
Download Telegram
📚 Algorithmic Thinking: Learn Algorithms to Level Up Your Coding Skills, 2nd Edition (2024)

Если ты знаешь синтаксис, но на словах «графы» и «динамика» начинаешь гуглить — это норм. Эта книга как раз про переход от «я пишу код» к «я понимаю, что делаю».

Второе издание учит алгоритмическому мышлению через задачи из спортивного программирования. Без высшей математики и абстрактной теории. Задача → варианты решений → выбор лучшего.

Что прокачиваешь:

🔵 хеш-таблицы, рекурсию, динамическое программирование;
🔵 деревья, графы, кучи;
🔵 умение сравнивать алгоритмы, а не брать первый рабочий;
🔵 привычку думать о сложности до того, как код попал в прод.

Почему это полезно:

✔️ задачи взяты из реальных соревнований, а не «учебных примеров»;
✔️ мышление — универсальное, язык вторичен;
✔️ готовит к собеседованиям без заучивания шаблонов.

Кому подойдёт:

✔️ студентам и самоучкам;
✔️ тем, кто «падает» на алгоритмах на интервью;
✔️ разработчикам, которые хотят писать код быстрее и умнее, а не длиннее.

Скачать

🐸 Книги для программистов | Поддержать бустом
Please open Telegram to view this post
VIEW IN TELEGRAM
4
💻 Подборка новостей по PHP за неделю:​

🔹 Laravel 12.49.0 — в коллекциях появился метод hasSole() для проверки наличия ровно одного подходящего элемента. Также добавлена поддержка between с подзапросами, сохранение ключей в fluent resource collections и работа с датой/временем в команде maintenance mode.

🔹 NativePHP for Mobile — бесплатно — объявлен релиз NativePHP Air, а мобильная версия NativePHP стала полностью бесплатной, вместе с рядом улучшений экосистемы и платформы.

🔹 Laravel VS Code Extension 1.5.0 — улучшена поддержка Livewire 4 и Blade: более точный парсинг, автодополнение и IntelliSense для современных Laravel-проектов.

🔹 Statamic 6 — состоялся официальный релиз новой версии CMS: обновлённая админ-панель и современный фронтенд-стек.

🔹 Symfony 26 января — 1 февраля — активное развитие Symfony 8.1, а также выпущены версии 5.4.51, 6.4.33, 7.3.11, 7.4.5 и 8.0.5 для устранения потенциальной уязвимости и усиления безопасности.

Библиотека пхпшника

#свежак
🗂️ Сохранение нескольких моделей

Знаете ли вы, что Laravel позволяет сохранять сразу несколько связанных моделей с помощью метода saveMany 🚀

Библиотека пхпшника

#vardump
2
Почему вы должны указывать тип данных в массивах в PHP

Статья обсуждает важность и преимущества использования типов массивов в PHP для повышения ясности кода, улучшения автодополнения в IDE и улучшения статического анализа.

👉 Читать

Библиотека пхпшника
Proglib ищет эксперта для ведения PHP-каналов. Нам нужен автор, который глубоко погружён в индустрию и пишет для опытных разработчиков.

🐘 ЗАДАЧИ:

➡️ Вести три канала о PHP: основной, задачи и собеседования.
➡️ Создавать контент Middle+: архитектура, оптимизация, разбор RFC, кейсы Laravel/Symfony.
➡️ Готовить задачи и вопросы для интервью с качественным разбором решений.
➡️ Работать с аналитикой: отслеживать метрики (охваты, ERR) и корректировать контент-план.
➡️ Мониторить комьюнити и оперативно упаковывать тренды в посты.

🎯 ТРЕБОВАНИЯ:

➡️ PHP Middle+: понимание работы движка, паттернов и экосистемы.
➡️ Стиль: умение писать для профи — ёмко, аргументированно и без воды.
➡️ Инструменты: уверенное владение нейросетями для ускорения работы.
➡️ Самостоятельность: вы сами находите темы и отвечаете за качество.

УСЛОВИЯ:

📍 Удалёнка, гибкий график, частичная занятость.
📍 Сдельная оплата за количество задач.
📍 Аудитория — тысячи профильных разработчиков.

👉 Оставляйте отклик, и мы свяжемся с вами!
Please open Telegram to view this post
VIEW IN TELEGRAM
2
🔒 Symfony: Lock vs Semaphore — когда и что выбрать?

В разработке многозадачных PHP-приложений часто возникает необходимость контролировать доступ к общим ресурсам. Symfony предоставляет два мощных инструмента для этой цели: Lock и Semaphore. Хотя оба компонента служат для синхронизации процессов, их подходы и области применения существенно различаются.

🔐 Lock — эксклюзивный доступ
Lock обеспечивает исключительный доступ к ресурсу:
🔸Один процесс — один доступ: только один процесс может получить «ключ» к ресурсу в любой момент времени.
🔸Идеально для критических секций: обновление файлов, обработка платежей, изменение данных в базе данных.
🔸Простая модель: либо у вас есть доступ, либо вы ждёте.

🚦 Semaphore — ограниченный параллелизм
Semaphore позволяет контролировать количество одновременно работающих процессов:
🔸Ограниченное количество разрешений: каждый процесс «потребляет» одно разрешение.
🔸Идеально для ограничения параллелизма: обработка изображений, API-запросы, очереди задач.
🔸Модель «ограниченного доступа»: несколько процессов могут работать одновременно, но не более заданного лимита.

🧠 Когда использовать что?

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

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

📚 Документация:


Symfony Lock

Symfony Semaphore


🐸Библиотека пхпшника

#элементарный_выбор
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
Instructor

Библиотека для структурированной экстракции данных на PHP, основанная на LLM. Создан для простоты, прозрачности и контроля.

Пример показывает, как инструктор извлекает структурированную информацию из предоставленного текста (или последовательности сообщений в чате).

🔗 Github

#инструменты
😁1
🚀 Как ускорить массовую отправку HTTP-запросов в PHP

🔍 Постановка задачи:
Есть скрипт на PHP, который должен отправлять множество HTTP-запросов. Нужно сделать это как можно быстрее. Очевидное решение — параллельная отправка.

🔧 Шаг 1: последовательная обработка
Простой цикл с curl_init() и curl_exec() на каждый URL. Результат: 10 запросов выполняются за ~4.4 секунды.

⚙️ Шаг 2: повторное использование curl-хэндла
Инициализируем curl один раз и переиспользуем. Время выполнения снижается до ~1.7 секунды.

Шаг 3: параллельная отправка с curl_multi_
Используем curl_multi_init() и запускаем запросы одновременно. Итог: всего 0.5 секунды на 10 запросов. Почти в 9 раз быстрее, чем изначально.

📦 Шаг 4: отправка батчами (batching)
Если запросов сотни или тысячи, одновременно всё не потянет даже мощный сервер. Решение — отправка пакетами, например по 3. Это позволяет контролировать нагрузку. В нашем примере — ~0.8 секунды на 10 запросов.

🔗 Читать статью

Библиотека пхпшника #буст
🔥62🥱2
CRUD на PHP с использованием файберов и пула соединений с PostgreSQL

В новой статье на Хабре автор делится опытом создания прототипа CRUD-приложения, использующего файберы и пул соединений с PostgreSQL. Результаты впечатляют: один процесс PHP CLI обрабатывает 10 параллельных запросов за 2 секунды, благодаря асинхронной обработке и неблокирующему вводу-выводу.

🔍 Ключевые моменты:

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

Неблокирующий драйвер PostgreSQL обеспечивает асинхронное взаимодействие с базой данных.

Сравнение с сервером на базе PHP-FPM показало значительное преимущество в
производительности при использовании файлов.

💡 Для кого это будет полезно:
🔸 Разработчикам, стремящимся повысить производительность своих приложений.

🔸 Тем, кто интересуется асинхронным программированием в PHP.

🔸 Специалистам, работающим с PostgreSQL и желающим оптимизировать взаимодействие с базой данных.

🔗 Хабр
1🥱2
🛠 Ускоряем работу в PhpStorm: самые полезные хоткеи

Мы знаем, что большинство из вас — крутые сеньоры😎 Но также здесь есть новички, которым могут пригодиться горячие клавиши в PhpStorm. Вот подборка наиболее полезных сочетаний для навигации и поиска:

🔹 Двойное нажатие Shift: открывает окно Search Everywhere для быстрого поиска файлов, классов или действий по всему проекту.

🔹 Ctrl + N: переход к классу по имени.

🔹 Ctrl + Shift + N: поиск и открытие файла по названию.

🔹 Ctrl + Alt + Shift + N: быстрый поиск и переход к символу (классу, методу, переменной, константе).

🙂 Пишите в комменты ваши любимые сочетания
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱3👍2
How to: создание MCP-сервера с помощью Symfony

Model Context Protocol (MCP) открывает новые горизонты для интеграции ИИ с внешним миром. Если вы работаете с большими языковыми моделями (LLM), вы наверняка столкнулись с их ограничениями — они не могут напрямую взаимодействовать с внешними сервисами или базами данных. Но с помощью MCP это становится возможным!

MCP позволяет разработчикам добавлять внешние инструменты к LLM, расширяя их возможности и улучшая взаимодействие с пользователем. В этой статье мы расскажем, как с помощью Symfony создать сервер MCP и начать разрабатывать инструменты, которые будут интегрировать вашу модель с реальным миром.

🔗 Читать статью

Библиотека пхпшника #буст
1
💬Знаете ли вы, что вы можете использовать scan в Laravel для разбора строки, введенной в коллекцию, в соответствии с форматом, поддерживаемым встроенной функцией PHP «sscanf»? 🚀

Библиотека пхпшника

#vardump
👍8🌚21
Собираем фулл-хаус: 3 курса по цене 1

Хватит выбирать между «полезно», «модно» и «для души». Мы запустили механику, которая позволяет собрать кастомный стек навыков без удара по бюджету: покупаете один курс — два других забираете бесплатно.

Современный PHP — это строгая типизация и паттерны. Прокачайте архитектуру и шаблоны проектирования, чтобы писать код уровня Symfony/Laravel. Для роста технического кругозора — алгоритмы и структуры данных.

Если хотите расширить стек (или уйти в ML) — полный набор по AI: от математики и ML-старта до разработки автономных агентов.

В качестве альтернативного бэкенд-языка — обновлённый Python.

Собрать свой пак
3
💡 Форматирование процентов

Знаете ли вы, что Laravel поставляется с помощником percentage, позволяющим получить процентное отношение к любому показателю? 🚀

Библиотека пхпшника

#vardump
2🥱2
📚 Читаете ли вы техническую литературу, чтобы прокачать свои навыки?

❤️ — да, постоянно читаю
👍 — иногда читаю
👾 — почти не обращаюсь к книгам, получаю знания из других источников

👇 Посоветуйте в комментариях книги, которые показались вам наиболее полезными

#интерактив
👍2823👾23