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

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

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

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

РКН: https://gosuslugi.ru/snet/67a5d13cd6fa92100ee6f68b
Download Telegram
📚 Psl — Современный, централизованный, хорошо типизированный, неблокируемый набор API

Библиотека представляет собой современную, согласованную, централизованную и строго типизированную стандартную библиотеку для PHP. Ее цель — предоставить разработчикам PHP набор неблокирующих API, которые упрощают и стандартизируют выполнение общих задач, таких как работа со строками, массивами, генерация случайных чисел и другие операции.

Использование этой библиотеки может поспособствовать повышению качества и читаемости кода, обеспечивая единообразие и надежность при решении повседневных задач.

🔗Github

#инструменты
👍61
PVM — менеджер версий PHP

Простой bash-скрипт для управления несколькими версиями PHP в Unix-системах(в том числе MacOS).

Установка через Curl:
curl -o /usr/local/bin/pvm https://raw.githubusercontent.com/smoqadam/pvm/main/pvm
chmod +x /usr/local/bin/pvm
export PATH="$HOME/.pvm/current:$PATH"

🔗Github

#инструменты
👍29😁41
php-ext — Расширение для хрома, показывающее консоль PHP (Laravel) devtools

Простое расширение Chrome для создания фрейма консоли PHP. Этот пакет использует пакет Spaties Laravel Web Tinker и помещает его в панель devtools, делая его доступным из любой точки панели.

🔗Github

#инструменты
3🥰1
php-tokio — Используйте любую асинхронную библиотеку Rust в PHP

Эта библиотека позволяет вам использовать любую асинхронную библиотеку Rust внутри PHP в асинхронном режиме.

Она полностью интегрирована с revolt: это обеспечивает полную совместимость с amphp , PSL и responsephp.

🔗 Github

#инструменты
🔥15
Prism

Унифицированный интерфейс для работы с LLM в Laravel. Поддерживает API Anthropic, DeepSeek, Gemini, Groq, Mistral, Ollama, OpenAI и xAI.

🔗 Github

#инструменты
👍10🔥2
🚀 Exceptional Validation — новый подход к валидации данных в Symfony

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

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

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

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

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

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

🔗 Github

Библиотека пхпшника #инструменты
😁21
Buggregator — удобная отладка

Buggregator — это идеальный инструмент отладки, который работает как сервер VarDumper, профилировщик Xhprof, локальный SMTP-сервер, локальный Sentry и многое другое.

Ознакомьтесь с постом Павла Бучнева о профилировании PHP (Laravel) приложений с помощью xhprof.

Библиотека пхпшника #инструменты
6👍11🤩31
Instructor

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

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

🔗 Github

#инструменты
👍151
Reli — профилировщик выборки или памяти

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

🔗 Github

#инструменты
👍51
Парсер JSON

Парсер с нулевыми зависимостями для чтения больших JSON из любого источника с эффективным использованием памяти.

🔗 Github

#инструменты
👍71
Safe

Все функции PHP, переписанные так, чтобы они выбрасывали исключения, а не возвращали false.

👉 Github

#инструменты
👍5👾4🤔21
PHP Datatypes: Строгий и безопасный способ работы с примитивными типами данных

Эта библиотека представляет гибкий, но строгий способ работы с примитивными типами данных, такими как целые числа, плавающие и строки, в PHP. Она делает акцент на безопасности типов и точности, поддерживая операции для подписанных и беззнаковых целых чисел (Int8, UInt8 и т.д.) и различных форматов с плавающей точкой (Float32, Float64 и т.д.).

Для чего это нужно:

🟢Безопасность типов: Явно определяя типы данных, например UInt8, вы устраняете риск проникновения недопустимых значений в ваше приложение. Например, использование целых чисел без знака гарантирует, что значение останется в допустимых диапазонах, обеспечивая защиту от неожиданного ввода данных.

🟢Точность: Работа с точными значениями, особенно с числами с плавающей точкой, может быть сложной в PHP из-за того, как он управляет плавающими числами нативно.

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

🟢Удобство чтения и обслуживания: Явные типы данных улучшают читаемость кода. Когда разработчик читает ваш код, он сразу же понимает, какой тип значения ожидается и какие ограничения на него накладываются. Это повышает удобство сопровождения в долгосрочной перспективе.

🔗 Github

Библиотека пхпшника #инструменты
👍3🔥1
Thumbhash PHP — читаемые идентификаторы

Это библиотека для создания уникальных, читаемых человеком идентификаторов из файлов изображений. Он вдохновлен алгоритмом Thumbhash Эвана Уоллеса и обеспечивает реализацию алгоритма на PHP.

Thumbhash — это компактное представление плейсхолдера для изображения. Создавайте его в соответствии с вашими данными в то время как реальное изображение грузится для более плавной загрузки.

👉 Github

Библиотека пхпшника #инструменты
👍21
static-php-cli — сборка в бинарный файл

Инструмент для сборки PHP-приложений в один бинарный файл без дополнительных зависимостей.

Он имеет множество фич:

👜 Сборка однофайлового исполняемого файла php, без каких-либо зависимостей
🍔 Сборка самораспаковывающегося исполняемого файла phpmicro (склеивание бинарного и исходного кода php в один файл)
💊 Автоматическая проверка окружения сборки (модуль Doctor)
Поддержка Linux, macOS, FreeBSD, Windows
🔧 Настраиваемые исправления исходного кода
📚 Управление зависимостями сборки
📦 Предоставление собственного автономного исполняемого файла spc (собранного spc и box)
🔥 Поддержка многих популярных расширений
💾 Интеграция UPX (значительно уменьшает размер бинарных файлов)

🔗 Github

Библиотека пхпшника #инструменты
4👍4🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
SPX — удобный профилировщик

Простое и понятное расширение для профилирования PHP со встроенным веб-интерфейсом. От других подобных расширений оно отличается тем, что:

🟢полностью бесплатное и ограниченное вашей инфраструктурой (т.е. никаких утечек данных в SaaS).
🟢Очень прост в использовании: просто установите переменную окружения (командная строка) или включите радиокнопку (веб-запрос) для профилирования вашего скрипта. Таким образом, вы освобождаетесь от необходимости ручного инструментирования кода (поддерживается даже Ctrl-C долго работающего скрипта командной строки).
🟢возможность получения множества метрик: в настоящее время поддерживается 22 метрики (различные метрики времени и памяти, включенные файлы, используемые объекты, ввод-вывод...).

🔗 Github

Библиотека пхпшника #инструменты
👍65
@platformatic/php-node — модуль для Node.js, который позволяет выполнять PHP-приложения внутри Node.js.

Он использует пул рабочих потоков Node.js для многопоточной обработки PHP-запросов, обеспечивая высокую производительность и масштабируемость без дополнительных усилий.

🔧 Ключевые особенности:

Легкая интеграция: Встраивайте PHP в Node.js приложения.

Многопоточная обработка: Параллельная обработка PHP-запросов с использованием Node.js.

Увеличение производительности: Комбинирует возможности PHP и Node.js для мощных решений.

Единая среда разработки: Упрощает работу с двумя языками в одном проекте.

🎯 Использование:

🔸 Миграция PHP приложений: Легко переносите старые PHP приложения в Node.js.
🔸 Гибридные приложения: Объединяйте возможности PHP и Node.js.
🔸 Веб-сервисы: Используйте сильные стороны PHP с производительностью Node.js.

🚀 Попробуйте php-node и улучшите свои приложения с минимальными усилиями! Подробнее в GitHub репозитории.

Библиотека пхпшника #инструменты
🤔2👍1
WebRTC PHP

Полная реализация протокола WebRTC на чистом PHP! Для использования не требуется Node.js или JavaScript на бэкенде. Однако вам потребуется включенный FFI.

Цель — упростить создание приложений на основе WebRTC на чистом PHP — включая медиа-серверы, веб-приложения для видеоконференций, SFU и peer-to-peer приложения.

🔗 Github

Библиотека пхпшника #инструменты
10👍3
php-internal/dload

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

Основные возможности

🔸 Автоматическая загрузка: DLoad позволяет автоматически скачивать необходимые бинарные файлы из релизных активов GitHub, что упрощает процесс интеграции внешних инструментов в проект.

🔸 Управление версиями: Библиотека помогает управлять версиями загружаемых бинарных файлов, обеспечивая соответствие между версией инструмента и версией вашего проекта.

🔸 Интеграция с Composer: DLoad может быть интегрирована с Composer, что позволяет автоматически загружать и обновлять бинарные зависимости при установке или обновлении пакетов.

Применение

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

🔗 Github

Библиотека пхпшника #инструменты
🤔3🔥2👍1
PHP-GLFW

Библиотека php-glfw — это расширение для PHP, которое предоставляет полноценную поддержку OpenGL и GLFW, позволяя создавать 2D и 3D графические приложения, такие как игры, научные симуляции и пользовательские интерфейсы, непосредственно на PHP. Это особенно полезно для разработчиков, желающих использовать PHP в графических приложениях, где традиционно используются языки, такие как C++ или Python.

🔧 Основные возможности

Полная поддержка OpenGL (4.1 и выше): Библиотека предоставляет доступ к GPU-ускоренному рендерингу, поддерживая около 90% стандартных возможностей OpenGL.

Интеграция с GLFW: PHP-GLFW включает привязки к библиотеке GLFW, обеспечивая кроссплатформенное создание и управление окнами, а также обработку ввода с клавиатуры, мыши и джойстиков.

API векторной графики: Вдохновленный HTML5 Canvas, этот API позволяет легко рисовать примитивы, работать с цветами, градиентами, изображениями и текстом, используя OpenGL-контекст.

Математическая библиотека PHPGL: Включает структуры данных и функции для работы с векторами, матрицами и кватернионами, оптимизированные для графических приложений.

Загрузчики текстур и моделей: Поддерживает загрузку изображений (.png, .jpg, .gif, .bmp, .tga) и 3D-моделей (.obj, .mtl), что упрощает процесс разработки.

Библиотека пхпшника #инструменты
🤔4🔥2👍1😁1
Dead code detector

Библиотека для обнаружения неиспользуемого кода с помощью расширения PHPStan. Обнаруживает мертвые циклы, поддерживает такие библиотеки, как Symfony, Doctrine, PHPUnit и др. Может автоматически удалять неиспользуемый PHP-код.

Легко установить через:

composer require --dev shipmonk/dead-code-detector

🔗 Github

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