必學PHP類庫/常用PHP類庫大全

本文檔參考以下github資源的整理和其它網絡收集



依賴管理( Dependency Management )

用於依賴管理的包和框架

框架( Frameworks )

Web開發框架

  • Symfony2 - 由獨立組件構成的框架(SP2)

  • Zend Framework 2 - 同樣是由獨立組件構成的框架(ZF2)

  • Laravel 5 - 簡潔優雅的PHP Web開發框架(L5)

  • Aura PHP - 獨立組件的框架

  • Yii2 - 用於開發大型Web應用的高性能PHP框架

  • thinkphp - 中文最佳實踐PHP開源框架

  • Nette - 同樣是由獨立組件構成的框架

  • PPI Framework 2 - 一個交互性的框架

  • CakePHP - 一個高效的應用開發框架(CP)

  • Phalcon - 一個作爲C擴展的框架

  • Yaf - 鳥哥的C擴展的框架

    • swoole-yaf - 基於 Swoole 及 Yaf 的開發框架

    • yaf - 另一個基於 Swoole 及 Yaf 的開發框架

  • SwooleDistributed - swoole 分佈式全棧框架

  • Zan PHP Framework - 有贊開源的 PHP 框架

  • php-msf - Camera360開源的微服務框架

  • Biny - Biny是一款高性能的超輕量級PHP框架

  • Swoft Framework - 基於Swoole原生協程,新時代PHP高性能協程框架

  • mixstart/mixphp - 基於 Swoole 的FPM、常駐內存、協程三模 PHP 高性能框架

組件( Components )

配置( Configuration )

加載配置文件的類庫和擴展

  • Yaconf - 一個高性能的配置管理擴展

  • config - 一個輕量級的配置加載器, 支持 PHP, INI, XML, JSON, YAML files

  • Zend-config

  • phpdotenv - 讀取.env中全局的最高優先級變量

  • symfony/yaml - 加載和剝離YAML配置文件

微框架( Micro Frameworks )

微型框架和路由

路由( Routers )

  • Fast Route - 一個高效路由庫

  • Route - 基於Fast Route的路由庫

  • Pux - 另一個高效的路由庫

  • Klein - 一個靈活的路由庫

  • Macaw - 一個簡單的 PHP 路由器,超級精簡、快速而且很性感。

模板引擎( Templating )

模板和詞法分析的庫與工具

靜態站生成器( Static Site Generators )

生成Web頁面內容的預處理工具

  • Sculpin - 將Markdown和Twig轉換爲靜態HTML的工具

  • Phrozn - 另一款ithub將Textile、Markdown和Twig轉爲HTML的工具

  • Spress

  • Couscous - 將Markdown 文檔轉換成 HTML 發佈到Github Page 的工具

HTTP

用於HTTP和抓取網站的庫

SOAP

  • soap-client - A general purpose SOAP client for PHP

  • soap-client - PHP implementation of SOAP 1.1 and 1.2 client specifications

  • wsdl2phpgenerator - Simple utility and class library for generating php classes from a wsdl file.

  • laravel-soap - Soap 協議客戶端

中間件( Middlewares )

用於構建應用的類庫的中間件

URL

解析URL的庫

郵件( Email )

用於發送和解析Email的庫

文件操作( Files )

關於文件處理和MIME類型檢查

流( Stream )

處理流的庫

  • Streamer - 一個簡單的面向對象流包裝庫

依賴注入( Dependency Injection )

實現依賴注入設計模式的庫

圖像( Imagery )

處理圖像的庫

測試( Testing )

測試代碼庫和生成測試數據的庫

  • PHPUnit - 一個單元測試框架

  • DBUnit - PHPUnit的代碼測試庫

  • ParaTest - PHPUnit的並行測試庫

  • PHPSpec - 根據規範的單元測試庫

  • Codeception - 一個全棧測試框架

  • AspectMock - PHPUnit/Codeception的模擬框架

  • Atoum - 一個簡單的測試庫

  • Mockery - 一個用於測試的模擬對象庫

  • Phake - 另一個用於測試的模擬對象庫

  • Prophecy - 一個強大的模擬框架

  • Faker - 一個僞數據生成庫

  • Samsui - 另一個僞數據生成庫

  • Alice - 用於生成複雜數據的庫

  • Behat - 一個行爲驅動開發(BDD)的測試框架

  • Pho - 另一個行爲驅動開發的測試框架

  • Mink - Web驗收測試

  • HTTP Mock - 一個在單元測試中模擬HTTP請求的庫

  • VFS Stream - 一個用於測試的虛擬文件系統流包裝

  • VFS - 另一個用於測試的虛擬文件系統

  • Locust - 一個Python開發的現代負載測試庫

  • Peridot - 一個事件驅動的測試框架

  • SimpleTest - Unit Testing for PHP

  • testbench - Laravel 擴展包的單元測試工具

  • laracasts/TestDummy - Laracasts 出品的假數據創建工具

持續集成( Continuous Integration )

持續集成的庫和應用

  • Travis CI - 一個持續集成的平臺

  • SemaphoreCI - 一個給開源程序和私有項目的持續集成平臺

  • PHPCI - 一個PHP的開源持續集成平臺

  • Sismo - 一個持續的測試服務器庫

  • Jenkins - PHP支持的持續集成平臺

  • JoliCi - PHP開發的由Docker支持的持續集成客戶端

文檔( Documentation )

生成項目文檔的庫

  • Sami - 一個API文檔生成器

  • APIGen - 另一個API文檔生成器

  • PHP Documentor 2 - 文檔生成器

  • phpDox - 一個PHP項目的文檔生成器(不僅僅是API文檔)

  • swagger-php - A php swagger annotation and parsing library

安全( Security )

用於生成安全的隨機數、加密數據、掃描漏洞, 令牌的庫

密碼( Passwords )

處理和存儲密碼的庫和工具、各種編碼的庫

代碼分析( Code Analysis )

用於分析、解析和操作代碼庫的工具

  • PHP Parser - 一個PHP編寫的PHP解析器

  • PHPPHP - 一個PHP實現的PHP虛擬機

  • PHPSandbox - PHP的沙盒環境

  • Dissect - 詞法和語法分析的工具集合

  • PHP Mess Detector - 一個掃描代碼bug、次佳代碼和未使用參數的庫

  • PHP_CodeSniffer - 一個PHP/CSS/JS代碼規範與質量檢查工具

  • PHP CS Fixer - 一個PHP代碼規範與質量檢查工具

  • phpmd - 一個PHP代碼規範與質量檢查工具

  • PHPCPD - 一個檢測複製和粘貼代碼的庫

  • PHP Analyser - 一個分析PHP代碼中錯誤的庫

  • PHP Manipulator - 用於分析和修改PHP源代碼的庫

  • PHP Metrics - 一個靜態測量庫

  • PHP Refactoring Browser - 一個用於重構PHP代碼的命令行工具

  • php-semver-checker - 一個版本對比的命令行工具

  • UBench - 一個簡單的小型基準測試庫

  • Athletic - 一個基於標註的基準測試庫

  • Mondrian - 使用圖論的代碼分析工具

  • Scrutinizer - 檢查PHP代碼的Web工具

  • PHPLOC - 一個快速評估PHP項目大小的工具

  • PHPCheckstyle - 一個幫助遵守特定代碼規則的工具

  • PhpDependencyAnalysis - 一個創建可定製型依賴關係圖表的工具

  • Code Climate - 自動化的code review

  • PHP Error - 用於轉換標準的 PHP 錯誤信息,主要用於開發過程中的調試

  • psalm - 一個幫助你識別代碼裏可能存在 bugs 的靜態分析工具

  • phan - 代碼靜態分析工具

  • phpstan - 代碼靜態分析工具

  • PHPLint - 用於PHP文件語法檢測(支持多進程,基於 php -l)

結構( Architectural )

有關於設計模式,編程規範以及代碼組織方式的庫

調試和性能( Debugging and Profiling )

調試代碼的庫和工具

  • xDebug - 一個PHP的調試和分析工具

  • whoops

  • PHP Debug Bar - 一個調試工具條

  • PHP Console - Web調試控制檯

  • Barbushin PHP Console - 一個使用Google Chrome的Web調試控制工具

  • PHPDBG - 一個交互性的PHP調試器

  • Tracy - 一個簡單的錯誤檢測、日誌和時間測量庫

  • Z-Ray - 一個調試和性能分析的工具

  • xHprof - Facebook開源的PHP性能評測工具    - xhprof - 基於官方版本fork的社區版本(支持PHP7)

    • xhprof.io - 實現保存xhprof數據以及展示數據的UI

    • xhgui - 另一個保存xhprof數據以及展示數據的UI

  • Blackfire.io - 一個低開銷的代碼探查器

  • Kint - 一個調試和性能分析的工具

  • phptrace - 360開源的PHP執行跟蹤工具

  • php-apm - Application performance management for PHP application

  • BooBoo - 集中異常捕獲

  • Collision - 命令行PHP應用程序的錯誤處理程序框架

  • symfony/debug - PHP debug調試庫

  • Molten - 應用透明鏈路追蹤工具(PHP擴展)

  • laravel-debugbar - Laravel調試器

  • itsgoingd/clockwork - 配合 Chrome 瀏覽器下同名插件的調試工具

  • GrahamCampbell/Laravel-Exceptions - 錯誤異常處理工具(支持開發和生產環境,使用 Whoops 進行錯誤顯示)

構建工具( Build Tools )

項目構建和自動化工具

  • Go - 一個簡單的PHP構建工具

  • Bob - 一個簡單的項目自動化工具

  • Phake - 一個PHP克隆庫

  • Box - 用來構建PHAR文件的工具

  • Phing - 依據Apache Ant的PHP項目構建系統

任務運行器( Task Runners )

自動運行任務的庫

  • Task - 依據Grunt和Gulp的純PHP任務運行器

  • Robo - 面向對象的PHP任務運行器

  • Bldr - 構建在Symfony組件上的PHP任務運行器

導航( Navigation )

構建導航結構的工具

資源管理( Asset Management )

用於管理、壓縮和最小化網站資源的工具

地理定位( Geolocation )

使用經緯度編碼地址的庫

日期與時間( Date and Time )

處理日期和時間的庫

事件( Event )

事件驅動或非阻塞事件循環實現的庫

日誌( Logging )

用於生成和處理日誌文件的庫

電子商務( E-commerce )

用於支付和構建在線電子商務商店的庫和應用

PDF

處理PDF文件的庫和軟件

Office

Office套裝的各種文檔的處理庫

數據庫( Database )

使用對象關係映射(ORM)或數據映射技術的數據庫交互庫

遷移( Migrations )

用於管理數據庫模式、遷移、備份的庫

非關係型數據庫( NoSQL )

處理NoSQL後端的庫

隊列( Queue )

處理事件和任務隊列的庫

隊列服務框架

  • Kafka - 高吞吐量的分佈式發佈訂閱消息系統

  • RabbitMQ - 使用 erlang 編寫的 AMQP (高級消息隊列協議) 的服務實現

  • RocketMQ

  • ActiveMQ

  • Qpid

  • Disque - 分佈式內存隊列

  • beanstalkd - 一個高性能、輕量級的消息隊列中間件

隊列相關類庫

搜索( Search )

在數據中建立索引和執行查詢相關的庫和軟件

命令行( Command Line )

構建命令行工具的庫

定時任務( Crontab )

定時任務管理 crontab在 PHP 中的相關封裝

身份驗證( Authentication and Authorization )

實現身份驗證模式的庫

權限控制( Permission )

角色與權限控制相關組件

標記( Markup )

處理標記的庫

字符串( Strings )

解析和操縱字符串的庫

數字( Numbers )

處理數字的庫

過濾和驗證( Filtering ang Validation )

用於過濾和驗證數據的庫

REST和API

用於開發restful APIs的庫和Web框架

  • dingo/api - 構建 API 服務器的完整解決方案

  • Apigility - 一個使用Zend Framework2構建的API構建器

  • Hateoas - 一個HATEOAS REST的web服務庫

  • HAL - 一個超文本應用語言(HAL)構建庫

  • Negotiation - 一個內容協商庫

  • Drest -一個將Doctrine實體展現爲REST資源結點的庫

  • Restler - 一個將PHP方法展現爲RESTful web API的輕量級框架

  • thephpleague/fractal - [最佳實踐]數據返回的統一化處理

  • api-problem - A simple implementation of the api-problem specification

  • graphql-php - 應用層查詢語言庫

  • GraphQL - 另一個應用層查詢語言庫

  • GrahamCampbell/Laravel-Throttle - 速率控制工具

緩存( Caching )

緩存數據的庫

數據結構和存儲( Data Structure and Storage )

實現數據結構和存儲技術的庫

通知( Notifications )

關於通知的庫

部署( Deployment )

用於項目部署的庫

國際化和本地化(Internationalisation and Localisation)

用於國際化(I18n)和本地化(L10n)的庫

第三方API( Third Party APIs )

訪問第三方API/SDK的庫

擴展( Extensions )

幫助構建PHP擴展的庫

  • Zephir - 用於開發PHP擴展的一種在PHP和C++間的編譯語言

  • PHP CPP - 一個用於開發PHP擴展的C++庫

  • PHP-X - C++ wrapper for Zend API

PHP 安裝(PHP Installation)

幫助安裝和管理PHP

開發環境(Development Environment)

創建沙箱開發環境的軟件和工具

  • Docker - 一個開源的應用容器引擎

  • Vagrant - 一個輕便的創建開發環境的工具

  • Ansible - 一個簡單的業務流程框架

  • Puppet - 服務器自動化框架和應用

  • PuPHPet - 一個用於構建PHP開發虛擬機工具

  • Protobox - 另一個用於構建PHP開發虛擬機工具

  • Phansible - 另一個用於構建PHP開發虛擬機工具

  • centstead - Laravel local development environment base on vagrant and homestead

  • Devilbox - A modern dockerized LAMP and MEAN stack alternative to XAMPP

  • Homestead - 基於 Vagrant 的 PHP 開發環境

  • Laradock - 基於 Docker 的 PHP 開發環境

虛擬機(Virtual Machines)

替代的PHP虛擬機

  • HHVM - Facebook 開源的PHP虛擬機

  • HippyVM - 另一個PHP虛擬機

開發工具(Integrated Development Environment)

支持PHP的IDE

Web 應用程序(Web Applications)

基於Web的應用程序和工具

基礎設施(Infrastructure)

提供PHP應用程序和服務的基礎設施

  • appserver.io - 基於PHP的多線程應用程序服務器

  • php-pm - 進程管理器,增壓器和PHP應用程序的負載平衡器

  • laravel-swoole - 基於 swoole 的高性能HTTP Server

  • laravel-s - 另一個基於 swoole 的高性能HTTP Server

數據庫中間件( DB Proxy )

用於讀寫分離、分庫分表等

  • kingshard - 金山開源的數據庫中間件

  • heisenberg - 百度開源的數據庫中間件

  • Oceanus - 58同城開源的數據庫中間件

  • Atlas - 360開源數據庫中間件

  • DBProxy - 美團點評基於Atlas的數據庫中間件

  • Mycat

  • TiDB - 分佈式數據庫

  • mysql-proxy - Swoole開源的數據庫中間件

RPC框架

遠程過程調用框架

異步網絡通信框架( Asynchronous Event Driven Framework )

規則引擎( Rules Engine )

  • Hoa\Ruler - Hoa項目的規則引擎

  • Ruler - 簡單的無狀態的規則引擎

  • Rules - PHP簡易規則引擎

其他( Miscellaneous )

不屬於以上分類的有用的類庫和工具


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章