Пользователь
28,2
рейтинг
12 марта 2015 в 11:02

Разработка → 30 чудных библиотек для PHP программистов из песочницы

Предлагаю читателям «Хабрахабра» перевод публикации «30 Amazing PHP Libraries for Programmers and Developers». Авторы собрали несколько удивительных PHP-библиотек, которые помогут реализовать некоторые классные вещи, не прилагая много усилий. Цель обзора состоит в том, чтобы преподнести что-то новое, поэтому список не включает популярные библиотеки.

30. Goutte


image

Goutte используется для скрапинга веб-сайтов и извлечения данных. Лицензия — MIT. Предоставляет обширный API для обхода сайтов/блогов и извлечения данных из HTML/XML.

29. GoogChart


image

GoogChart является классом PHP для создания динамичных диаграмм с помощью Google Charts. Не распространяется на весь API Google Charts, но делает их очень простыми в использовании.

28. GifCreator


image

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

27. dBug


image

dBug является PHP-версией ColdFusion-ского sfdump. Он отображает цветную и хорошо структурированную информацию о переменной в табличном виде. Стили можно редактировать, таблицу можно сворачивать/разворачивать. dBug также можно заставить изменить вывод данных определенных типов. Например, вы можете настроить вывод объектной переменной в виде массива.

26. Alice


image

Alice позволяет мгновенно генерировать сотни фейковых данных (фикстуры) в целях тестирования. Вы можете генерировать сложные данные с ограничениями, которые легко читать и редактировать. Позволяет контролировать диапазоны фикстур, необязательные данные, значения объектов и уникальные ограничения.

25. PHPGeo


image

PHPGeo — простая библиотека для измерения расстояния между двумя координатами с высокой точностью. Она использует формулу Гаверсинуса и Винсента для вычисления расстояния. Вы можете интегрировать ее с любым приложением, связанным с картами или местоположениями.

24. Geocoder


image

Если вы планируете разработать geo aware приложение, взгляните на Geocoder. Это расширяемая PHP-библиотека делится на 2 части: Provider и HttpAdapter. Она также предлагает дополнительный уровень абстракции для геокодирования.

23. Purl


image

Purl — объектно-ориентированная библиотека для работы с URL. Вы можете легко создавать экземпляры URL и вызывать по цепочке методы после создания URL. Библиотека поддерживает манипуляции путем, фрагментом и запросом.

22. Snappy


image

Snappy позволяет создавать снимки, миниатюры и PDF по URL или HTML страницы. Эта библиотека использует WebKit на основе wkhtmltoimage и wkhtmltopdf, доступна для Windows, OSX и Linux.

21. ShellWrap


image

ShellWrap — библиотека, которая позволяет использовать мощные инструменты Unix/Linux в PHP. Вы можете легко вызывать команды, используя простой синтаксис и обработку ошибок исключениями PHP. Все аргументы должным образом экранируются, пути к исполняемым файлам будут разрешены автоматически.

20. Unirest


image

Unirest — это коллекция легких HTTP-библиотек, которые идеально подходят для многочисленных приложений. Выполняет PUT, DELETE, PATCH, GET и POST запросы. Поддерживается gzip, базовая аутентификация, загрузка файлов, формы, настраиваемые тайм-ауты и заголовки по умолчанию для каждого запроса.

19. IniScan


image

IniScan — это инструмент, предназначенный для сканирования php.ini файлов на предмет безопасности. Ищет распространенные ошибки безопасности и рапортует о результатах. Можно задавать порог для правил сканирования, чтобы найти ошибки выше указанного уровня.

18. PHP Captcha


image

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

17. Ratchet


image

Ratchet — слабо связанная PHP библиотека, которая предлагает различные инструменты для разработки в режиме реального времени, двунаправленную связь приложения между сервером и клиентом через WebSockets. Есть много легкодоступных компонентов. Вы можете написать собственное приложение-чат за несколько минут.

16. TCPDF


image

TCPDF — PHP-класс (открытый) для создания PDF-документов. Он поддерживает все стандартные форматы страницы, пользовательский формат страниц, UTF-8, PDF аннотации, в том числе ссылки, режим рендеринга текста, набор шрифтов, растягивание текста и интервал, сжатие страниц, TrueTypeUnicode и OpenTypeUnicode.

15. Munee


image

Библиотека Munee может использоваться для компиляции на лету CoffieScript, Less, SCSS, изменения размера изображения, сжатия JS & CSS, и кэширования результата на стороне сервера и клиента, без изменения assets в шаблоне. В целом, это хороший вариант для достижения молниеносных запросов и сохранения пропускной способности.

14. HTML Purifier


image

HTML Purifier — библиотека для фильтрации HTML, разработанная для удаления всего вредоносного кода. Может быть использована для защиты кода от XSS атак. Эта библиотека использует надежные белые списки, агрессивный разбор, и убеждается, что в результате разметка соответствует стандартам.

13. Detector


image

Detector — открытая библиотека для определения многочисленных сведений о пользователях/посетителях. Это может помочь вам построить точные веб-аналитики. Она отображает пользовательский агент, тип устройства, используемый браузер вместе с его HTML и CSS возможностями. Также сообщает, кто запросил данные — человек или бот.

12. Whoops


image

Whoops поможет вам работать с ошибками и исключениями в менее болезненной форме. Предоставляет отличный интерфейс, сообщающий вам подробную информацию об ошибках и исключениях, присутствующих в коде (с подсветкой). Кроме того, поддерживает JSON, XML, SOAP и AJAX.

11. Gaufrette


image

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

10. Imagine


image

Imagine, это богатая объектно-ориентированная библиотека для работы с изображениями. Она может обрабатывать различные операции, такие как открытие, сохранение, создание, изменение размеров, водяные знаки, создать коллаж, делать отражение изображения и т.д. Система координат Imagine позволяет рисовать различные фигуры на изображениях. Класс для работы с цветом помогает создавать значения RGB для применения цветов к изображениям. Он также поддерживает слои и манипуляции для анимированных GIF.

9. Idiorm


image

Idiorm — легковесный ORM и гибкий конструктор запросов для PHP5, представляющий собой надстройку над PDO. С ним не надо будет писать длинные и рутинные SQL запросы. Кроме того, он не требует ни XML настроек, ни классов моделей, ни генераторов кода.

8. phpFastCache


image

Как следует из названия, это высоко производительная система кэширования. Она предназначена для ускорения динамических веб-приложений за счет снижения нагрузки на базы данных. Она поддерживает несколько методов кэширования (период может быть явно определен), включая MemCache, Memcached, файлы, wincache, mpdo, pdo и apc. Вы не должны переписывать свой PHP класс для кэширования снова, при изменениях на серверах.

7. JpGraph


image

JpGraph — PHP библиотека для создания объектно-ориентированных графиков. Имеет более 200 встроенных флагов стран, 400 именованных цветов и поддерживает дополнительно диаграммы Ганта, несколько Y-осей, альфа-смешивание и внутреннее кэширование (с таймаутом). Эта библиотека позволяет строить линейные диаграммы, гистограммы, пироги, карты, свечи, полярные, радар, круговые и контурные диаграммы любого размера.

Читайте: 20+ Полезных онлайн инструментов для создания графиков и диаграмм.

6. SEOstats


image

SEOstats — мощная библиотека с открытым исходным кодом, которая предоставляет различные относящиеся к SEO показатели, такие как детальный анализ обратных ссылок, рейтинг страницы, тренды сайта, ключевые слова, статистика трафика, Alexa rank и многое другое. Она собирает данные от Alexa, Google, Moz, open site explorer, SEMRush, Facebook и Twitter.

5. PHP Parser


image

PHP Parser написан на PHP для упрощения статического анализа кода и манипуляций. Он преобразует исходный код PHP в абстрактное синтаксическое дерево. Синтаксическое дерево поможет вам легко проанализировать проблемы кода и ошибки. Кроме того, вы можете превратить синтаксическое дерево обратно в PHP код. Пример показан на изображении, где белая часть представляет простой код, а черный участок содержит сгенерированное синтаксическое дерево.

4. PHP Error


image

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

3. PHP-CPP


image

PHP-CPP — библиотека C++, которая может быть использована для разработки расширений PHP. Она построена с помощью простых в использовании и хорошо документированных классов для создания собственных расширений для PHP. Это может ускорить вашу программу, потому что код, написанный на C++ выполняется быстрее, чем на PHP.

2. Eden


image

Eden — набор повторно используемых компонентов, который работает практически со всеми PHP-фреймворками и CMS. Охватывает компоненты для автозагрузки, кэша, файловых систем, веб сервисов, шаблонов, интернационализации, платежных систем и облачных технологий. Работает с основными веб-сервисами, включая Google, Facebook, Yahoo, PayPal, Tumblr, Foursquare и Amazon Web Services.

1. Locust


image

Locust — простой в использовании инструмент тестирования пользовательской нагрузки. Он может быть использован для выяснения, сколько одновременных пользователей выдержит система. Позволяет писать сценарии на Python. У Locust отличный интерфейс (HTML + JS), который отображает важные данные в режиме реального времени.
Николай @mnv
карма
28,0
рейтинг 28,2
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (18)

  • +21
    Это офигительно, что из «30 чудных библиотек для PHP программистов» последней (т.е. под номером 1) идет библиотека на Питоне.
    • +3
      Так «чудные» же.

      А если серьёзно — библиотека для программистов, а не для языка. Разница таки есть.
      • +2
        Ну сценарии то нужно писать на Python :)
  • 0
    Спасибо, превосходная подборка.

    Как раз понадобилась библиотека для создания GIF-анимации. Думаю, и некоторые другие пригодятся.
    • +2
      На случай «как раз понадобилось» все же советую пользоваться packagist.org, а не ждать поста на хабре. :) По запросу gif animation или animated gif эта библиотека там первая.
      • +2
        Было бы круто если бы на packagist добавили сортировку результатов… Ишус там давно об этом висит, вдруг кто будет проходить мимо у кого свободное время есть и желание…
  • +3
    phpfastcache — просто жуть :)
    • +1
      Жуть в хорошем или плохом смысле?
  • 0
    Для работы с БД в ООП-стиле есть еще симпатичная либа Sparrow.
  • 0
    Вместе с idiorm не стоит забывать paris, вместе они представляют собой очень хорошую связку
    j4mie.github.io/idiormandparis/
  • 0
    «Гаверсинус» в большой буквы повеселил. en.wikipedia.org/wiki/Versine
  • 0
    В php-cpp сегодня как раз выпустил версию 1.3.1
  • +1
    В избранное с первых строк. Большое Вам человеческое спасибо.
  • 0
    Спасибо за подборку. Некоторые мне лично очень понравились.
    А какие то наверняка ещё да пригодятся %)
  • +1
    В пару к Alice есть еще Faker
  • 0
    Дак ведь Goutte — это просто новый уровень абстракции, ибо для каждого сайта все-равно приходится свой парсер писать…
    • 0
      Можно попробовать вот эту штуку import.io/
      • 0
        Не знаю на чем основан сей сабж, но с рандомного сайта вместо нужного контента я получил только список в li. Так что, к сожалению, пока только ручками приходится все обвертывать…

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.