#library #middle
Ocramius не только талантливый разработчик (автор Doctrine и ProxyManager), но и веселый парень, он вместе с roave, где сейчас работает, сделали пакет Dont: это простая библиотека с набором трейтов, которая запрещает использовать магические методы. Пожалуй, это лучшее применение трейтов из всех, что можно найти.
https://github.com/Roave/Dont
  
  Ocramius не только талантливый разработчик (автор Doctrine и ProxyManager), но и веселый парень, он вместе с roave, где сейчас работает, сделали пакет Dont: это простая библиотека с набором трейтов, которая запрещает использовать магические методы. Пожалуй, это лучшее применение трейтов из всех, что можно найти.
https://github.com/Roave/Dont
GitHub
  
  GitHub - Roave/Dont: :no_entry_sign: Small set of defensive programming utilities/traits for PHP
  :no_entry_sign: Small set of defensive programming utilities/traits for PHP - GitHub - Roave/Dont: :no_entry_sign: Small set of defensive programming utilities/traits for PHP
  #advanced #library 
Если вы переживаете за типы и следите за их соответствие ожидаемым, можете воспользоваться библиотекой php-matcher. PhpMatcher позволяет вам описать, какие типы вы ожидаете, описать объединенные типы и проверить различные паттерны.
https://github.com/coduo/php-matcher
  
  Если вы переживаете за типы и следите за их соответствие ожидаемым, можете воспользоваться библиотекой php-matcher. PhpMatcher позволяет вам описать, какие типы вы ожидаете, описать объединенные типы и проверить различные паттерны.
https://github.com/coduo/php-matcher
GitHub
  
  GitHub - coduo/php-matcher: The easiest way to match data structures like JSON/PlainText/XML against readable patterns. Sandbox:
  The easiest way to match data structures like JSON/PlainText/XML against readable patterns. Sandbox: - coduo/php-matcher
  #library 
Если у вас легаси и вам очень хочется перейти на новую версию php, но нет времени, используйте Rector. Если разработчики из вашей команды не могут договориться об общем code-style, а тратить время на ревью не хочется, используйте Rector.
https://github.com/rectorphp/rector
  
  Если у вас легаси и вам очень хочется перейти на новую версию php, но нет времени, используйте Rector. Если разработчики из вашей команды не могут договориться об общем code-style, а тратить время на ревью не хочется, используйте Rector.
https://github.com/rectorphp/rector
GitHub
  
  GitHub - rectorphp/rector: Instant Upgrades and Automated Refactoring of any PHP 5.3+ code
  Instant Upgrades and Automated Refactoring of any PHP 5.3+ code - rectorphp/rector
  #advanced #library 
Список стандартных функций из нестандартной библиотеки. В данной библиотеке реализованы практически все стандартные PHP функции, но с улучшенной типизацией, полностью покрытые статическим анализом и с некоторыми дополнительными возможностями: ассерт типов, проверка инвариантов и обработка ошибок.
https://github.com/azjezz/psl
  
  Список стандартных функций из нестандартной библиотеки. В данной библиотеке реализованы практически все стандартные PHP функции, но с улучшенной типизацией, полностью покрытые статическим анализом и с некоторыми дополнительными возможностями: ассерт типов, проверка инвариантов и обработка ошибок.
https://github.com/azjezz/psl
GitHub
  
  GitHub - azjezz/psl: 📚 PHP Standard Library - a modern, consistent, centralized, well-typed, non-blocking set of APIs for PHP programmers
  📚 PHP Standard Library - a modern, consistent, centralized, well-typed, non-blocking set of APIs for PHP programmers - azjezz/psl
  #library 
Если вы выбираете для себя библиотеку по конвертации html в markdown и обратно, в этой статье вы найдете список наиболее популярных библиотек со сравнительными характеристиками: самая быстрая, самая гибкая и наиболее поддерживающая все теги маркдауна библиотека.
https://php.watch/articles/php-markdown-libraries
  
  Если вы выбираете для себя библиотеку по конвертации html в markdown и обратно, в этой статье вы найдете список наиболее популярных библиотек со сравнительными характеристиками: самая быстрая, самая гибкая и наиболее поддерживающая все теги маркдауна библиотека.
https://php.watch/articles/php-markdown-libraries
PHP.Watch
  
  Best Markdown libraries for PHP
  A comparison of features and performance of Markdown processing libraries for PHP.
  #advanced #library 
Библиотека для удобного поиска по json с помощью декларативного языка jmespath.
https://github.com/jmespath/jmespath.php
  
  Библиотека для удобного поиска по json с помощью декларативного языка jmespath.
https://github.com/jmespath/jmespath.php
GitHub
  
  GitHub - jmespath/jmespath.php: Declaratively specify how to extract elements from a JSON document, in PHP
  Declaratively specify how to extract elements from a JSON document, in PHP - jmespath/jmespath.php
  #github #library 
Мы часто используем коллекции элементов: коллекции строк, чисел, объектов. Коллекции предоставляют удобный API по добавлению, удалению, обходу, слиянию, фильтрации элементов и многому другому. Ниже собран список самых популярных на данный момент коллекций.
https://github.com/loophp/collection
https://github.com/ramsey/collection
https://github.com/schmittjoh/php-collection
https://github.com/illuminate/collections
https://github.com/doctrine/collections
  
  Мы часто используем коллекции элементов: коллекции строк, чисел, объектов. Коллекции предоставляют удобный API по добавлению, удалению, обходу, слиянию, фильтрации элементов и многому другому. Ниже собран список самых популярных на данный момент коллекций.
https://github.com/loophp/collection
https://github.com/ramsey/collection
https://github.com/schmittjoh/php-collection
https://github.com/illuminate/collections
https://github.com/doctrine/collections
GitHub
  
  GitHub - loophp/collection: A (memory) friendly, easy, lazy and modular collection class.
  A (memory) friendly, easy, lazy and modular collection class. - loophp/collection
  
  Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter
#symfony #advanced   Все знают про мощный Dependency Injection компонент Symfony. Также он поддерживает работу с переменными окружения – не только их загрузкой, но и их валидацией и приведением к типам.  Например, если вы хотите получить переменную как int…
#library #symfony 
В тему поста наш подписчик сделал более усовершенствованный бандл для разбиения строки из переменных окружения в массив по разделителям и приведения его значений к любому необходимому типу.
https://github.com/nbgrp/env-bundle
  
  В тему поста наш подписчик сделал более усовершенствованный бандл для разбиения строки из переменных окружения в массив по разделителям и приведения его значений к любому необходимому типу.
https://github.com/nbgrp/env-bundle
GitHub
  
  GitHub - nbgrp/env-bundle: Bundle with a few useful Symfony environment variable processors.
  Bundle with a few useful Symfony environment variable processors. - nbgrp/env-bundle
  #symfony #psr #library
PSR-15 совместимые миддлвары для Symfony с использованием атрибутов (это значит, что минимальная версия php для этого пакета – восьмая). Пакет не требует никаких изменений в
https://github.com/kafkiansky/symfony-middleware
  
  PSR-15 совместимые миддлвары для Symfony с использованием атрибутов (это значит, что минимальная версия php для этого пакета – восьмая). Пакет не требует никаких изменений в
Kernel фреймворка и поддерживает глобальные миддлвары (для всех контроллеров), группы миддлвар и одиночные миддлвары, а также их композицию.https://github.com/kafkiansky/symfony-middleware
GitHub
  
  GitHub - kafkiansky/symfony-middleware: PSR-15 middleware for Symfony framework.
  PSR-15 middleware for Symfony framework. Contribute to kafkiansky/symfony-middleware development by creating an account on GitHub.
  #library 
Библиотека для удобной работы с SOAP, которая умеет генерировать клиент под ваши требования.
https://github.com/phpro/soap-client
  
  Библиотека для удобной работы с SOAP, которая умеет генерировать клиент под ваши требования.
https://github.com/phpro/soap-client
GitHub
  
  GitHub - phpro/soap-client: A general purpose SOAP client for PHP
  A general purpose SOAP client for PHP. Contribute to phpro/soap-client development by creating an account on GitHub.
  #library 
Небольшая библиотека, которая поможет вам следить за архитектурой ваших приложений: например, при определенной конфигурации она проследит, что классы используют определенный нейминг или что классы из одной папки не используют классы другой папки. Почти то же самое, что делает deptrac, но проще.
https://github.com/phparkitect/arkitect
  
  Небольшая библиотека, которая поможет вам следить за архитектурой ваших приложений: например, при определенной конфигурации она проследит, что классы используют определенный нейминг или что классы из одной папки не используют классы другой папки. Почти то же самое, что делает deptrac, но проще.
https://github.com/phparkitect/arkitect
GitHub
  
  GitHub - opensoftwareconsulting/deptrac
  Contribute to opensoftwareconsulting/deptrac development by creating an account on GitHub.
  #advanced #symfony #library 
Интеграция RoadRunner с Symfony через новый Runtime компонент.
https://github.com/php-runtime/roadrunner-symfony-nyholm
  
  Интеграция RoadRunner с Symfony через новый Runtime компонент.
https://github.com/php-runtime/roadrunner-symfony-nyholm
Symfony
  
  The Runtime Component (Symfony Docs)
  The Runtime Component decouples the bootstrapping logic from any global state to make sure the application can run with runtimes like PHP-PM, ReactPHP, Swoole, FrankenPHP etc. without any changes.   I…
  #advanced #library 
Асинхронный php клиент для работы с брокером очередей NSQ.
https://github.com/nsqphp/nsqphp
  
  Асинхронный php клиент для работы с брокером очередей NSQ.
https://github.com/nsqphp/nsqphp
GitHub
  
  GitHub - nsqphp/nsqphp: PHP Client for NSQ
  PHP Client for NSQ. Contribute to nsqphp/nsqphp development by creating an account on GitHub.
  #advanced #library 
Библиотека, которая позволяет джсон или ямл мапить на объекты, причем ее главным отличием от подобных библиотек является то, что она позволяет использовать конструктор (и вложенные объекты), и то, что она умеет читать аннотации в коде и использовать их как дополнительную информацию при мапинге.
https://github.com/CuyZ/Valinor
  
  Библиотека, которая позволяет джсон или ямл мапить на объекты, причем ее главным отличием от подобных библиотек является то, что она позволяет использовать конструктор (и вложенные объекты), и то, что она умеет читать аннотации в коде и использовать их как дополнительную информацию при мапинге.
https://github.com/CuyZ/Valinor
GitHub
  
  GitHub - CuyZ/Valinor: PHP library that helps to map any input into a strongly-typed value object structure.
  PHP library that helps to map any input into a strongly-typed value object structure. - CuyZ/Valinor
  #library 
Новая библиотека от Frank de Jonge. Позволяет гидрировать сырые данные в объект. Поддерживает вложенные объекты, тайп-касты и алиасы полей.
https://github.com/EventSaucePHP/ObjectHydrator#object-hydrator
  
  Новая библиотека от Frank de Jonge. Позволяет гидрировать сырые данные в объект. Поддерживает вложенные объекты, тайп-касты и алиасы полей.
https://github.com/EventSaucePHP/ObjectHydrator#object-hydrator
GitHub
  
  GitHub - EventSaucePHP/ObjectHydrator: Object Hydration library to create Command and Query objects.
  Object Hydration library to create Command and Query objects. - EventSaucePHP/ObjectHydrator
  #library 
Библиотека для реализации долгоживущих воркеров от Валентина Удальцова.
https://github.com/happy-inc-tech/worker
  
  Библиотека для реализации долгоживущих воркеров от Валентина Удальцова.
https://github.com/happy-inc-tech/worker
GitHub
  
  GitHub - happy-inc-tech/worker
  Contribute to happy-inc-tech/worker development by creating an account on GitHub.
👍4
  