Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter


Гео и язык канала: Россия, Русский
Категория: Технологии


Все самое полезное для пхпшника в одном канале.
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/bca892d6
Наши каналы: https://t.me/proglibrary/9197
РКН: https://gosuslugi.ru/snet/67a5d13cd6fa92100ee6f68b

Зарегистрирован в РКН
Связанные каналы  |  Похожие каналы

Гео и язык канала
Россия, Русский
Категория
Технологии
Статистика
Фильтр публикаций


♻️ Переопределение с помощью интерфейса

Атрибут Override проверяет, что метод действительно переопределяет родительское определение того же метода: это подразумевает, что у класса должен быть родитель, чтобы использовать атрибут Override.

Существует особый случай, когда класс не имеет родителя, но реализует интерфейс. Атрибут Override может быть использован для любого метода интерфейса, хотя у класса нет родителя.

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


#memes


Репост из: Библиотека программиста | программирование, кодинг, разработка
👨🏻‍💻 Исследование IT-аудитории Proglib 2025: зарплаты, технологии, профессии

Кто такой современный разработчик в 2025 году? Актуальное исследование портрета IT-специалистов: зарплаты, технологии, специализации и демография разработчиков.

➡️ Вся статистика и детали — здесь

Библиотека программиста #свежак


⚙️ Улучшаем производительность кода с AI

Обнаружили в профилировщике тормозящий код? Попробуйте этот промпт, чтобы AI помог вам оптимизировать его:

📝 Промпт:

Analyze the following PHP code and suggest optimizations for better performance. Identify bottlenecks, improve memory usage, and recommend alternative approaches.

// Вставьте ваш код здесь

💡 Дополнительные возможности:

— Добавьте Refactor it using modern PHP features (e.g., OPcache, JIT, Fibers), если хотите использовать новейшие возможности PHP.
— Добавьте Optimize it for concurrency using Swoole or ReactPHP, если важна многопоточность и высокая нагрузка.
— Добавьте Suggest a profiling strategy using Xdebug or Blackfire, если нужна диагностика.

💬 Какие инструменты вы используете для профилирования кода?

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


В 2017 году был запущен проект Bref с целью запуска PHP в бессерверной среде на AWS Lambda.

В 2020 году начались замеры количества запросов (или заданий, cron-задач, вызовов и т.д.), которые обрабатываются с его помощью каждый месяц. Это было сделано для того, чтобы показать AWS, что PHP заслуживает большего внимания и поддержки.

Ежемесячно данные добавлялись в электронную таблицу, и их количество постоянно растет. Как упомянуто в заголовке, на сегодняшний день с помощью PHP на Lambda обрабатывается более 40 миллиардов запросов в месяц.

Методика замеров описана в документации.

Кратко: каждые 100 вызовов среды выполнения отправляется несколько байтов данных через UDP. Эти данные полностью анонимны (вот содержимое пакета: Invocations_100:1|c\nLayer_fpm_100:1|c), а использование UDP гарантирует, что передача занимает всего несколько микросекунд (она неблокирующая). Эти байты доходят до небольшого сервера на EC2, который увеличивает счетчик в CloudWatch.

Наличие этой метрики оказалось крайне полезным во взаимодействии с AWS — теперь проект Bref воспринимается ими гораздо серьезнее. Примерно 1 из 1000 вызовов AWS Lambda — это PHP с Bref.

AWS даже внедрила свои внутренние метрики для отслеживания использования PHP (впрочем, и других языков тоже), и их данные совпадают с тем, что было получено в рамках проекта, что подтверждает правильность измерений.

Кроме того, удалось интегрировать счётчик метрик в режиме реального времени (почти реального времени, данные кэшируются на несколько минут) на главной странице проекта: bref.sh


💬 Хочешь прокачать навыки архитектуры на PHP за один вечер?
❗️Даже опытные PHP-разработчики сталкиваются с выбором: богатая или анемичная модель? CQRS или Event Sourcing? REST API или что-то сложнее?

📌 Разложим всё по полочкам на бесплатном авторском вебинаре Дмитрия Кириллова:

- узнаете, как упростить разработку с помощью грамотно выстроенной архитектуры
- научитесь осознанно выбирать инструмент под задачу
- посмотрите на полезные практические приёмы

Превратите архитектуру в своё конкурентное преимущество. Освойте подходы, которые реально работают в "бою" — и стань увереннее в любом проекте, от MVP до highload.

Регистрируйтесь прямо сейчас: https://clc.to/6l4uAg

Приходите на открытый урок 8 апреля в 20:00 мск. Участники получат скидку на курс «PHP Developer. Professional».

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, Erid 2Vtzqx3fZbe


Репост из: Библиотека шарписта | C#, F#, .NET, ASP.NET
💾 Как выбрать стратегию кэширования: разбор 7 популярных алгоритмов

Кешировать нужно с умом. И нет, LRU — не серебряная пуля.

В статье вас ждёт разбор алгоритмов: LRU, LFU, FIFO и другие
– Примеры, где каждый работает лучше
– Плюсы и минусы подходов
– Практические советы по выбору стратегии

Если проектируете систему с большими нагрузками или оптимизируете производительность — материал будет как раз.

➡️ Читать статью

🐸Библиотека шарписта


🎭 Dev Memes: 1 апреля, а баги всё те же

Сегодня день официально разрешённого троллинга — и мы не могли пройти мимо. Собрали подборку мемов для Пхпшника, которые вызывают лёгкое желание уволиться.

👉 Всё это — из нашего мемного канала «Библиотека IT-мемов»

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


🚀 Exceptional Validation — новый подход к валидации данных в Symfony

Теперь валидация бизнес-правил смещается от использования атрибутов и кастомных валидаторов, являющихся частью инфраструктурного кода, к применению бизнес-исключений непосредственно в клиентском коде.​

Преимущества такого подхода:

🔸 Упрощение валидации: Отказ от сложных механизмов, таких как группы валидации и кастомные expressions, делает процесс проверки данных более прозрачным и управляемым.​

🔸 Гибкость в различных контекстах: Возможность легко адаптировать логику валидации в зависимости от конкретного контекста без необходимости создания сложных конструкций.​

🔸 Совместимость: Библиотека интегрируется с Symfony Messenger и amphp, обеспечивая бесшовную работу в существующих проектах.​

🔸 Стандартные сообщения об ошибках: После обработки исключений библиотека возвращает список нарушений ограничений (constraint violations) в формате Symfony Validator.

🔗 Github

Библиотека пхпшника #инструменты


🔥Laravel — мощный PHP-фреймворк, но его скорость может быть ограничена стандартной связкой Nginx + PHP-FPM. Хотите разогнать своё приложение и сократить время отклика?

На открытом вебинаре 3 апреля в 20:00 мск разберём, как интегрировать Laravel с Roadrunner — высокопроизводительным сервером, который меняет подход к обработке запросов. Используем Octane, оптимизируем ресурсы и ускорим выполнение кода.

Вы научитесь подключать Roadrunner к своим проектам, поймёте, как он меняет жизненный цикл PHP-приложения, и сможете внедрить передовые технологии для масштабирования ваших сервисов.

👉Регистрируйтесь и получите скидку на большое обучение «Framework Laravel»: https://otus.pw/1VJg/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, Erid 2Vtzquin1pC


Репост из: Библиотека задач по PHP | тесты, код, задания
Что выведет данный код?


Репост из: Библиотека задач по PHP | тесты, код, задания
Что выведет данный код?
Опрос
  •   установленную версию PHP
  •   Too few arguments to function AccessedViaMagic::getPHPVersion(), 0 passed and exactly 1 expected
  •   PHP Arrays cannot be accessed as callable
  •   First array member is not a valid class name or object
295 голосов


🕑 Метод «times»

Знаете ли вы, что в Laravel есть классный метод коллекций times, который позволяет создавать коллекцию, вызывая замыкание N раз? Это может быть полезно при работе с днями или генерации случайных строк🚀


💻 Подборка новостей по PHP за неделю:​

🔎 Релиз CakePHP 4.5.10
Команда CakePHP объявила о выходе версии 4.5.10. Это технический релиз, исправляющий несколько проблем, о которых сообщило сообщество. ​
GitHub

🔎 Расширение JetBrains Xdebug Helper для браузера
JetBrains представила официальное расширение Xdebug Helper для Chrome, обеспечивающее беспроблемную отладку PHP-кода. ​

🔎 Laravel 12.3: Новый тип приведения JSON Unicode
Команда Laravel выпустила версию 12.3.0, включающую новый тип приведения JSON Unicode, проверку статуса связанных хранилищ в команде about, поддержку нативных типов JSON и JSONB в схемах SQLite и другие улучшения. ​

🔎 Неделя Symfony #951 (17–23 марта 2025 года)
На этой неделе в предстоящей версии Symfony 7.3 обновлена конфигурация по умолчанию для исключения расширений контейнера, сущностей и сообщений Messenger при регистрации сервисов, а также внесены изменения, связанные с сбросом сервисов.

Библиотека пхпшника #свежак


📊 Тестовые задания — любовь или боль?

По данным исследования, 81% IT-специалистов в России просто игнорируют вакансии с тестовыми заданиями. Программисты оказались самыми «неприступными» — только 19% согласны их выполнять.

😆 Только тестировщики, которые сами по долгу службы гоняют тесты, готовы пройти их ради работы (63%). Профессиональная эмпатия?

Как вы относитесь к тестовым заданиям при трудоустройстве? Делитесь мнением в комментах! 👇

🔥 — готов(-а) выполнить, если вакансия интересная
👍 — только если тестовое оплачивается
🌚 — игнорю такие вакансии сразу
🤔 — я уже делал(-а) тестовое, а его использовали в проде бесплатно

Библиотека пхпшника #междусобойчик


#memes

2k 0 26 1 37

Что умеет Rector: пишем кастомные правила для автоматизации рефакторинга PHP-проектов

Если вам часто приходится сталкиваться с рефакторингом старых PHP-проектов, при этом их потребности выходят за пределы штатного набора правил, эта статья для вас.

🔗 Хабр

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


💻 Переворачиваем биты 32-битного числа в PHP

Bitwise-операции 🔢— это основа низкоуровневого программирования, криптографии и дебага. Одна из распространённых задач — инверсия битов 32-битного беззнакового числа: заменяем все 0 на 1 и наоборот.

📌 Что такое 32-битное беззнаковое число?
Оно хранит значения от 0 до 4294967295 (2³² — 1). В отличие от знаковых чисел, здесь нет отрицательных значений.

🔹 Как инвертировать биты в PHP?
PHP поддерживает побитовые операции с операторами ~ (NOT) и ^ (XOR).
❌ ~ меняет все биты, но из-за особенностей PHP приводит к отрицательным значениям.
✅ ^ (XOR) с 0xFFFFFFFF даёт правильный результат.

🔍 Примеры работы кода

Вход: 0
🔹 Бинарный вид: 00000000000000000000000000000000
🔹 Инверсия: 11111111111111111111111111111111
🔹 Десятичный результат: 4294967295

Вход: 2147483647
🔹 Бинарный вид: 01111111111111111111111111111111
🔹 Инверсия: 10000000000000000000000000000000
🔹 Десятичный результат: 2147483648

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




Установка Laravel 12 с помощью Docker за 8 минут — полное руководство по установке и настройке

Спидран по установке Laravel в докер, после чего сразу можно начать разработку или тестирование кода

👉 Видео

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

Показано 20 последних публикаций.