學習資源
PHP相關的有參考價值的社群,部落格,網站,文章,書籍,影片等資源
依賴管理( Dependency Management )
用於依賴管理的套件和框架
- Composer / Packagist - 一個套件和依賴管理器.
- composer/installers - 一個多框架Composer庫安裝器
- hirak/prestissimo - 並行安裝Composer 依賴
- composer/satis - 搭建私有的Composer 套件倉庫
- FriendsOfPHP/pickle - PHP擴充安裝器
- Melody - A tool to build one file Composer scripts.
- tommy-muehle/tooly-composer-script - 使用Composer管理PHAR檔案的函式庫
框架( Frameworks )
Web開發框架
- laravel/laravel - 簡潔優雅的PHP Web開發框架
- symfony/symfony - 由獨立組件構成的框架(SP2)
- yiisoft/yii2 - 用於開發大型Web應用的高效能PHP框架
- cakephp/cakephp - 一個高效率的應用開發架構(CP)
- phalcon/cphalcon - 高性能的C擴展的框架
- Yaf - 鳥哥的C擴展的框架
- overtrue/yaf-skeleton - The Yaf testable skeleton and composer supported.
- swoole - 面向生產環境的PHP 非同步網路通訊引擎
- SwooleDistributed/SwooleDistributed - swoole 分散式全端框架
- swoft-cloud/swoft - 基於Swoole原生協程,新時代PHP高效能協程架構https://www.swoft.org
- hyperf-cloud/hyperf - 企業級的PHP 協程微服務框架
- mixstart/mixphp - 基於Swoole 的FPM、常駐記憶體、協程三模PHP 高效能框架(開發文件完善) http://mixphp.cn
- hhxsv5/laravel-s - 整合Swoole 到Laravel 或Lumen
- swooletw/laravel-swoole - High performance HTTP server based on Swoole. Speed up your Laravel or Lumen applications.
- scil/LaravelFly - To be an absolutely safe solution to run Laravel with Swoole. Laravel + Swoole Coroutine + Safety + Tinker Online.
- garveen/laravoole - Laravel && ( Swoole || Workerman ) to get 10x faster than php-fpm
- easy-swoole/easyswoole - use swoole easily just like echo "hello world";
- bingcool/swoolefy - swoolefy是一個基於swoole實現的輕量級、高效能、協程級、開放性的API和MVC應用服務框架
- youzan/zan - 有讚開源的PHP 架構(已停止維護)
- php-msf - Camera360開源的微服務框架
- Biny - 騰訊開源高效能的超輕量級PHP框架
- zendframework/zendframework - Zend 框架
組件( Components )
- auraphp - 一些獨立組件包
- Hoa Project - 一個PHP元件集合
- andersao/l5-repository - Repository 開發模式的支持
配置( Configuration )
載入設定檔的類別庫和擴充
- Yaconf - 一個高效能的設定管理擴展
- config - 一個輕量級的設定載入器, 支援PHP, INI, XML, JSON, YAML files
- Zend-config
- phpdotenv - 讀取.env中全域的最高優先權變數
- symfony/yaml - 載入和剝離YAML設定檔
微框架( Micro Frameworks )
微型框架和路由
- Lumen - 基於Laravel的微型框架
- Silex - 基於Symphony2組件的微型框架
- Silex Skeleton - 用於Silex的專案框架
- Silex Web Profiler - 用於Silex的Web偵錯工具條
- Slim - 另一個簡單的微型框架
- awesome-slim
- Slim Skeleton - 用於Slim的框架
- Slim View - Slim的自訂視圖集
- Slim Middleware - Slim的自訂中介軟體集合
- slim-skeleton - Slim基礎上實現了MVC及一些組件
- slim-boilerplate
- Bullet PHP - 用於建立REST APIs的微型框架
- Proton - 一個微型PHP框架
- blink - 一個為建構「long running」 服務而生的Web 微型高效能框架
- flight - 一個可擴展的PHP微框架
路由( Routers )
- Fast Route - 一個高效能路由庫
- Route - 基於Fast Route的路由庫
- Pux - 另一個高效率的路由庫
- Klein - 一個靈活的路由庫
- Macaw - 一個簡單的PHP 路由器,超級精簡、快速而且很性感。
模板引擎( Templating )
模板和詞法分析的庫與工具
- Twig - 一種綜合的模板語言
- asm89/twig-cache-extension - 用於Twig的範本片段快取庫
- rcrowe/TwigBridge - Twig 模板引擎支持
- Mustache - PHP實作的Mustache模板語言
- Phly Mustache - 另一個PHP實作的Mustache模板語言
- MtHaml - PHP實作的HAML模板語言
- PHPTAL - PHP實作的TAL模板語言
- Plates - 一個原始的PHP範本庫
- Lex - 一個輕量級模板解析器
- Aura.View - Provides TemplateView and TwoStepView
靜態站生成器( Static Site Generators )
產生Web頁面內容的預處理工具
- Sculpin - 將Markdown和Twig轉換為靜態HTML的工具
- Phrozn - 另一款ithub將Textile、Markdown和Twig轉為HTML的工具
- Spress
- Couscous - 將Markdown 文件轉換成HTML 發佈到Github Page 的工具
HTTP
用於HTTP和抓取網站的庫
- guzzle/guzzle - 一個完整的HTTP客戶端
- amphp/artax - An Asynchronous HTTP Client for PHP
- Buzz - 另一個HTTP客戶端
- Requests - 一個簡單的HTTP庫
- HTTPFul - 一個鍊式HTTP客戶端
- FriendsOfPHP/Goutte - 一個簡單的Web抓取器
- PHP VCR - 一個錄製和回放HTTP請求的函式庫
- php-curl-class - PHP的Curl類
- Beanbun - 多進程網路爬蟲框架
- php-mod/curl - PHP Curl Class
- medz/cors - PHP CORS (Cross-origin resource sharing) middleware.
- barryvdh/laravel-cors - 跨域資源共享的支持
- lezhnev74/openapi-psr7-validator - It validates PSR-7 messages (HTTP request/response) against OpenAPI specifications
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的函式庫
- Purl - 一個網址操作庫
- PHP Domain Parser - 一個本地的後綴解析器
- Uri - 一個簡單的網址操作庫
郵件( Email )
用於發送和解析Email的庫
- swiftmailer/swiftmailer - 一個郵件程式的解決方案
- PHPMailer/PHPMailer - 另一個郵件程式的解決方案
- nette/mail - 一個簡單優雅的郵件發送模組
- tedivm/Fetch - 一個IMAP庫
- willdurand/EmailReplyParser - 一個郵件回覆解析器庫
- henrikbjorn/Stampie - 關於郵件服務的函式庫,如SendGrid、PostMark、MailGun和Mandrill
- tijsverkoyen/CssToInlineStyles - 郵件範本中一個內聯的CSS函式庫
- nojacko/email-validator - 一個小巧的郵箱驗證庫
- egulias/EmailValidator - PHP Email validator library
- Snowfire/Beautymail - Laravel HTML郵件模板
文件操作( Files )
關於文件處理和MIME類型檢查
- symfony/finder - 透過一個直覺而流暢的介面來尋找檔案和目錄
- Gaufrette - 一個文件流的抽象層
- thephpleague/flysystem - 另一個檔案流的抽象層
- Canal - 一個檢查互聯網媒體類型的庫
- Apache MIME Types - 一個解析Apache MIME類型的函式庫
- Ferret - 一個MIME檢測庫
- Hoa Mime - 另一個MIME檢測庫
- Lurker - 一個資源追蹤庫
- PHP File Locator - 一個在大型專案中定位檔案的函式庫
- PHP FFmpeg - 一個用於FFmpeg影片包裝的函式庫
- GrahamCampbell/Laravel-Flysystem - 文件系統操作,多平台支持
流( Stream )
處理流程的庫
依賴注入( Dependency Injection )
實現依賴注入設計模式的函式庫
- Pimple - 一個小的依賴注入容器
- container-interop - Containers interoperability
- Auryn - 另一個小的依賴注入容器
- Container - 另一個靈活的依賴注入容器
- PHP DI - 一個使用標註實現的依賴注入
- Acclimate - 依賴注入容器和服務定位器的通用接口
- Symfony DI - 一個的依賴注入組件(SF2)
- Twittee
- simple di container
- Ding
- di - Yii DI container and injector
影像( Imagery )
處理影像的庫
- Intervention/image - 圖片操作庫
- Intervention/imagecache - 圖片快取增強工具
- Imagine - 一個影像處理庫
- Sybio/ImageWorkshop - 另一個影像處理庫
- Sybio/GifFrameExtractor - 一個擷取GIF動畫幀資訊的函式庫
- Sybio/GifCreator - 從多幅圖片中建立GIF動畫的庫
- nmcteam/image-with-text - 在圖像中嵌入文字的庫
- php-loep/color-extractor - 從映像中提取顏色的庫
- thephpleague/glide - 一個按需的圖片處理庫
- psliwa/image-optimizer - 一個優化圖片的庫
- PHPThumb - 縮圖處理函式庫
- t0k4rt/phpqrcode - 二維碼產生函式庫
- endroid/qr-code - 另一個二維碼產生庫
- Bacon/BaconQrCode - QR Code Generator for PHP
- SimpleSoftwareIO/simple-qrcode - 二維碼產生工具
- lsolesen/pel - PHP Exif 函式庫
- php-exif - PHP Exif資訊讀取函式庫
- Gregwar/Image - 映像處理庫
- Gregwar/Captcha - 圖形驗證碼
- google/recaptcha - google reCAPTCHA 驗證碼Client 庫
- mewebstudio/captcha - 圖片驗證碼方案
測驗( 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 )
用於產生安全的隨機數、加密資料、掃描漏洞, 令牌的庫
- ezyang/htmlpurifier - 一個標準的HTML過濾器
- random_compat - PHP5.x產生安全的隨機數的函式庫(PHP7可用內建
random_bytes()
和random_int()
函式) - RandomLib - 產生隨機數和隨機字串的庫
- True Random - 使用www.random.org產生隨機數的函式庫
- SecurityMultiTool - 一個PHP安全庫
- PHPSecLib - 一個純的PHP安全通訊庫
- TCrypto - 一個簡單的鍵值加密儲存庫
- PHP IDS - 一個結構化的PHP安全層
- PHP SSH - 物件導向的SSH包裝庫
- IniScan - 一個掃描PHP INI檔案安全的工具
- SensioLabs Security Check - 一個根據安全建議檢查Composer依賴的Web工具
- Zed - 網頁應用的整合滲透測試工具
- php-ratelimiter
- xxtea-php - XXTEA encryption algorithm library for PHP.
- mewebstudio/Purifier - 使用者提交的Html 白名單過濾
- defuse/php-encryption - 對稱金鑰加密庫
- paragonie/halite - 提供進階的加密介面的libsodium封裝包
密碼( Passwords )
處理和儲存密碼的庫和工具、各種編碼的庫
- ircmaxell/password_compat - 一個用於新的PHP5.5密碼功能的相容庫
- phpass - 一個便攜式密碼哈希框架
- ircmaxell/PHP-PasswordLib - 一個用於產生和驗證密碼的函式庫
- ircmaxell/password-policy - 一個PHP和JavaScript的密碼規則庫
- jeremykendall/password-validator - 驗證和升級密碼雜湊的函式庫
- bjeavons/zxcvbn-php - 一個基於Zxcvbn JS的PHP顯示密碼強度估計庫
- timoh6/GenPhrase - 一個產生安全隨機口令的庫
- tuupola/base62 - base62編碼庫(短網址應用)
- stephen-hill/base58php - base58編碼庫(Bitcoin中使用的一種獨特的編碼方式,主要用於產生Bitcoin的錢包位址)
- base85 - base85編碼庫(在base64的基礎上進一步壓縮資料量,應用於Adobe的PostScript語言和PDF文檔格式)
- bjeavons/zxcvbn-php - 評估密碼強度的函式庫,強度越強,密碼越不容易破解
程式碼分析( 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 )
有關於設計模式,程式設計規範以及程式碼組織方式的函式庫
- PHP Option - 一個PHP選項類型的函式庫
- Ruler - 一個簡單的無狀態的產生環境規則的引擎
- Finite - 一個簡單的PHP有限狀態機
- Compose - 一個功能組合庫
- Monad PHP - 一個簡單Monad函式庫
- Patchwork - 一個重新定義使用者的函式庫
- Galapagos - 語言轉換進化
- Design Patterns PHP - 一個使用PHP實作的設計模式實例庫
- Functional PHP - 一個函數式程式設計庫
- Lib Accessor - 一個簡化存取的庫
- Iter - 一個使用生成器提供迭代原語的函式庫
- laracasts/Laravel-5-Generators-Extended - Laracasts 出品的程式碼快速產生工具
- symfony/workflow - Workflow元件提供的工具用來管理一個工作流程或有限狀態機
調試和性能( 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 )
建構導航結構的工具
- KnpMenu - 一個菜單庫
- Cartographer - 一個網站地圖產生庫
資源管理( Asset Management )
用於管理、壓縮和最小化網站資源的工具
- kriswallsmith/assetic - 一個資源管理的管道庫
- CHH/pipe - 另一個資源管理的管道庫
- meenie/munee - 一個資源優化庫
- tedivm/JShrink - 一個JavaScript的壓縮函式庫
- webmozart/puli - 一個偵測資源絕對路徑的函式庫
- Chumper/Zipper - ZIp 打包工具(基於ZipArchive)
- HTMLMin/Laravel-HTMLMin - 基於minify 的HTML 壓縮工具
地理定位( Geolocation )
使用經緯度編碼地址的庫
- geocoder-php/Geocoder - 地理位置操作工具組(基於Geocoder)
- php-loep/Geotools - 一個地理工具相關的函式庫
- mjaschen/phpgeo - 一個簡單的地理庫
- jmikola/geojson - 一個GeoJSON的實現
- laravel-geoip - 透過IP 取得對應的地理位置資訊(GeoIP 資料庫)
- lionsoul2014/ip2region - IP 位址定位庫
- maxmind/GeoIP2-php - GeoIP 資料庫PHP客戶端
日期與時間( Date and Time )
處理日期和時間的庫
- Carbon - 一個簡單的日期時間API擴展
- ExpressiveDate - 另一個日期時間API擴充
- CalendR - 一個行事曆管理的函式庫
- date - 一個多語言的日期庫
- moment.php
事件( Event )
事件驅動或非阻塞事件循環實現的庫
- React - 一個事件驅動的非阻塞I/O函式庫
- Rx.PHP - 一個反應擴充庫
- phpsocket.io
- Ratchet - 一個Web套接字庫
- Hoa WebSocket - 另一個Web套接字庫
- Elephant.io - 另一個Web套接字庫
- Hoa EventSource - 一個事件來源庫
- Evenement - 一個事件調度庫
- Event - Event package for your app and/or domain.
- Cake Event - 一個事件調度類別庫
- Broadway - 一個事件來源和CQRS庫
日誌( Logging )
用於產生和處理日誌檔案的庫
- Monolog - 一個綜合的日誌類別庫
- KLogger - 一個易於使用的PSR-3日誌類
- Analog - 一個機遇閉包的微型日誌包
- SeasLog - 一個高效率的日誌擴展
- rap2hpoutre/laravel-log-viewer - 非常方便的頁面Log 查看工具
電子商務( E-commerce )
用於支付和建立線上電子商務商店的庫和應用
- OmniPay - 一個多網關支付處理的框架
- omnipay-paypal - PayPal 支付
- omnipay-wechatpay - 微信支付
- omnipay-unionpay - 銀聯支付
- omnipay-alipay - 支付寶支付
- omnipay-pingpp - ping++聚合支付
- omnipay-99bill - 快錢支付
- Payum - 一個用於支付的抽象庫
- Sylius - 一個開源的電子商務解決方案
- Thelia - 另一個開源的電子商務解決方案
- Money - PHP實現的Fowler金錢模式
- Sebastian Money - 一個處理貨幣價值的庫
- Swap - 一個匯率庫
- yansongda/pay - 優雅的Alipay 和WeChat 的支付SDK 擴充包
- paypal/PayPal-PHP-SDK - PHP SDK for PayPal RESTful APIs https://developer.paypal.com/docs/api/
- paypal/Checkout-PHP-SDK - PHP SDK for Checkout RESTful APIs
PDF
處理PDF檔案的庫和軟體
- Snappy - 一個PDF和圖像的生成庫
- WKHTMLToPDF - 一個將HTML轉換為PDF的工具
- PHPPdf - 一個將XML轉換為PDF和圖片的函式庫
- phpwkhtmltopdf
- php-pdftk - A PDF conversion and form utility based on pdftk
- barryvdh/laravel-dompdf - PDF 操作工具(基於dompdf )
- laravel-snappy - PDF 處理工具
Office
Office套裝的各種文件的處理庫
- PHPOffice/PHPWord - 處理Word文件的函式庫
- PHPOffice/PHPExcel - 處理Excel文件的函式庫
- PHPOffice/PHPPowerPoint - 處理PPT投影片的函式庫
- Wisembly/ExcelAnt - 操作Excel文件的函式庫
- PHPOffice/PhpSpreadsheet - 建議使用最新的PHPOffice維護的Excel 文件處理庫
- viest/php-ext-excel-export - 操作Excel的PHP 擴展
- Maatwebsite/Laravel-Excel - Excel 處理工具
- thephpleague/csv - 一個CSV資料操作庫
資料庫( Database )
使用物件關聯映射(ORM)或資料映射技術的資料庫互動庫
- Doctrine - 一個完整的DBAL和ORM
- Doctrine Extensions - 一個Doctrine行為的擴充集合
- Propel - 一個快速的ORM,遷移和查詢庫
- Eloquent - Laravel 5 ORM(L5)
- baum/baum - 嵌套集合(Nested Set) 模型的支持
- VentureCraft/revisionable - 資料模型的操作記錄(如管理員操作日記)
- nicolaslopezj/searchable - 以Trait 的形式為Eloquent 模型增加搜尋功能
- Tucker-Eric/EloquentFilter - 自訂查詢條件(模型欄位過濾)
- rtconner/laravel-tagging - 為Eloquent 模型增加打標籤功能
- LazyRecord - 一個快速的ORM
- Baum - 一個Eloquent的嵌套集合
- Spot2 - MySQL的ORM映射器
- RedBean - 一個輕量級、易設定的ORM
- Pomm - 用於PostgreSQL的一個物件模型管理器
- ProxyManager - 用於資料映射產生代理物件的工具集合
- Cake ORM - 物件關聯映射器, 實作了使用資料映射模式(CP)
- catfan/Medoo - 一個輕量級的加速開發的ORM
- auraphp/Aura.Sql - SQL database access through PDO.
- EasyDB - 資料庫抽象層
遷移( Migrations )
用於管理資料庫模式、遷移、備份的庫
- davedevelopment/phpmig - 一個遷移管理庫
- obmorgan/phinx - 一個資料庫遷移管理庫
- icomefromthenet/Migrations - 另一個遷移管理庫
- Doctrine Migrations - 用於Doctrine的遷移庫
- Xethron/migrations-generator - 從現存的資料中以migration 的形式匯出資料庫表, 包括索引和外鍵
- orangehill/iseed - 將資料從資料庫以seed 的方式匯出
- spatie/laravel-backup - 資料備份工具(支援壓縮, 支援各種檔案系統)
非關係型資料庫( NoSQL )
處理NoSQL後端的函式庫
- MongoDB
- mongo-php-library - MongoDB 官方PHP函式庫
- MongoQB - 一個MongoDB的查詢建置庫
- Monga - 一個MongoDB的抽象庫
- mongodm - MongoDB ORM
- php-mongo - PHP ODM for MongoDB
- jenssegers/laravel-mongodb - MongoDB 資料庫的支持
- Redis
- Predis - 一個功能完全的Redis庫
- codis - Codis 是分散式Redis 解決方案
- twemproxy - 是twtter開源的一個redis和memcache代理伺服器
- pika - Pika是一個可持久化的大容量redis儲存服務
隊列( Queue )
處理事件和任務佇列的庫
- enqueue-dev - Message queue packages for PHP, Symfony, Laravel, Magento
- enqueue/rdkafka
- enqueue/enqueue
- enqueue/pheanstalk
- enqueue/redis
- php-enqueue/dsn
隊列服務框架
- Kafka - 高吞吐量的分散式發布訂閱訊息系統
- RabbitMQ - 使用erlang 編寫的AMQP (高階訊息佇列協定) 的服務實現
- RocketMQ
- ActiveMQ
- Qpid
- Disque - 分散式記憶體佇列
- beanstalkd - 一個高效能、輕量級的訊息佇列中間件
佇列相關類別庫
- Pheanstalk - 一個Beanstalkd客戶端庫
- PHP AMQP - 一個純PHP AMQP函式庫
- Thumper - 一個RabbitMQ模式庫
- Bernard - 一個多後端的抽象函式庫
- php-resque - 基於redis的訊息佇列
- php-amqplib - 一個RabbitMQ客戶端函式庫
- kafka-php - 一個kafka客戶端程式庫(Composer)
- php-rdkafka - 一個kafka客戶端程式庫(PECL)
搜尋( Search )
在資料中建立索引和執行查詢相關的庫和軟體
- ElasticSearch PHP - 用於ElasticSearch 的官方客戶端程式庫.
- Elastica - 另一個ElasticSearch的客戶端程式庫
- Solarium - Solr 的客戶端程式庫.
- SphinxQL query builder - Sphinx 搜尋引擎的查詢庫
命令列( Command Line )
建置命令列工具的庫
- symfony/console - Symfony命令列工作元件
- symfony/process - Symfony指令執行元件(用於執行系統指令)
- Boris - 一個微型的PHP REPL
- PsySH - 另一個PHP REPL
- Pecan - 一個事件驅動,非阻塞的shell
- GetOpt - 一個命令列選擇解析器
- OptParse - 另一個命令列選擇解析器
- Commando - 一個簡單的命令列選擇解析器
- GetOptionKit - 同樣還是命令列選擇解析器
- mtdowling/cron-expression -計算cron運行日期的庫
- ShellWrap - 一個簡單的命令列包裝庫
- Hoa Console - 另一個命令列庫
- Shunt -一個在多台遠端機器上並行運行的命令列庫
- Cilex - 建置命令列工具的小型框架
- CLImate - 建立命令列工具的框架(可以輸出顏色和特殊格式)
- Webmozart Console
- Silly - Silly CLI micro-framework based on Symfony Console
- php-shellcommand - A simple object oriented interface to execute shell commands in PHP
- PHP-Console-Highlighter - 命令列下高亮顯示PHP 程式碼
定時任務( Crontab )
定時任務管理crontab在PHP 的相關封裝
- Indatus/dispatcher - 基於Laravel的定時任務管理
- osgochina/swoole-crontab - 基於swoole的定時器程序,支援秒級處理
- jobbyphp/jobby - 一個PHP 的定時任務管理器
- ajbdev/cronlingo - Express crontabs as human friendly phrases
- Indatus/dispatcher - 排程任務分發器(直接可替換掉Cron)
身份驗證( Authentication and Authorization )
實作身份驗證模式的程式庫
- Sentinel - 一個驗證和授權的框架
- Sentinel Social - 一個用於社交網路身份驗證的庫
- Opauth - 提供了OAuth 認證的支援,提供統一標準的存取方法
- OAuth2 Server - 一個OAuth2驗證伺服器、資源伺服器和用戶端程式庫
- OAuth2 Server - 一個OAuth2伺服器實現
- PHP oAuthLib - 另一個OAuth函式庫
- ruudk/twitteroauth - 一個Twitter OAuth庫
- Hawk - 一個Hawk HTTP驗證庫
- HybridAuth - 一個開源的社群登入庫
- Lock - 一個Access Control Lists (ACL) 系統庫.
- OAuth 1.0 Client - 一個OAuth 1.0 客戶端庫.
- OAuth 2.0 Client - 一個OAuth 2.0 客戶端庫.
- Sentry - 認證和授權系統
- EvaOAuth - 統一介面的OAuth 登入PHP 類別庫
- JSON Web Token- JSON網路令牌庫
- firebase/php-jwt
- lcobucci/jwt
- namshi/jose - JSON簽章與加密的函式庫
- tuupola/slim-jwt-auth
- tymondesigns/jwt-auth - JWT (JSON Web Token) 使用者認證機制
- Sapient - the Secure API ENgineering Toolkit API訊息傳遞安全校驗
- legalthings/sso - Simple Single Sign-On for PHP
- antonioribeiro/google2fa - 使用者認證方案(支援Google提倡的雙向認證與HOTP 認證演算法)
- PHPGangsta/GoogleAuthenticator - 谷歌雙向認證
權限控制( Permission )
角色與權限控制相關元件
- spatie/laravel-permission - 基於Laravel 的權限組件
- Zizaco/entrust - 基於使用者群組的使用者權限系統
- php-casbin/php-casbin - 輕量級開源存取控制框架Casbin 的PHP 實現
標記( Markup )
處理標記的庫
- Decoda - 一個輕量級的標記解析庫
- michelf/php-markdown - Markdown解析器
- thephpleague/commonmark - 一個支援CommonMark spec 的Markdown解析器.
- thephpleague/html-to-markdown - 一個html 轉換markdown 的轉換器
- erusev/parsedown - 一個Markdown解析器
- kzykhys/Ciconia - 一個支援Github風格的Markdown解析器
- cebe/markdown - 一個快速、可擴展的Markdown解析器
- GrahamCampbell/Laravel-Markdown - Markdown 解析器
- Masterminds/html5-php - 一個HTML5解析與序列化的函式庫
- heyupdate/Emoji - 一個簡單的處理emoji的類別庫
- iamcal/php-emoji - 一個emoji表情轉換函式庫
字串( Strings )
解析和操縱字串的庫
- jenssegers/agent - 客戶端User Agent 解析工具(基於Mobiledetect)
- sensiolabs/ansi-to-html - 一個將ANSI轉換為HTML5的函式庫
- nicolas-grekas/Patchwork-UTF8 - 處理UTF-8格式字串的便攜庫
- hoaproject/String - 另一個UTF-8格式的字串庫
- danielstjules/Stringy - 一個多位元組支援的字串操縱庫
- mikeemoo/ColorJizz-PHP - 一個處理和轉換顏色的庫
- ramsey/uuid - 產生UUIDs的庫
- laravel-uuid - RFC 4122 標準產生的UUID
- cocur/slugify - 一個將字串轉換為slug格式的函式庫
- jbroadway/urlify - 一個Django URLify.js的PHP端口
- kzykhys/Text - 一個文字處理庫
- jdorn/sql-formatter - 一個用於格式化SQL語句的函式庫
- tobie/ua-parser - 一個解析UA(User Agent)字串的函式庫
- piwik/device-detector - 另一個解析UA(User Agent)字串的函式庫
- serbanghita/Mobile-Detect - 一個輕量級的偵測行動裝置的函式庫(包括桌上型裝置)
- cbschuld/Browser.php - 偵測關於使用者的瀏覽器環境
- hisorange/browser-detect - 瀏覽器偵測工具(包含客戶端對JavaScript 和CSS 支援情況的偵測)
- colors.php - An easy way to add colors in your CLI scripts.
- cviebrock/eloquent-sluggable - 文章標題URL 別名處理工具
- fukuball/jieba-php - "結巴"中文分詞
數字( Numbers )
處理數位的庫
- Numbers PHP - 一個處理數字的函式庫
- Math - 處理較大數字的庫
- ByteUnits - 一個在二進位和測量系統中解析、格式化和轉換位元組單位的函式庫
- PHP Units of Measure - 一個測量單位間轉換的函式庫
- PHP Conversion - 另一個測量單位間轉換的函式庫
- LibPhoneNumber for PHP - PHP實現的Google電話號碼處理系統函式庫
- ivanakimov/hashids.php - 用來把整數產生唯一字串(例如:透過加密解密id來隱藏真實id)
- Particle - PHP ID Generator | Implementation of Twitter Snowflake ID Generator
- nanoid-php - 小巧的唯一ID產生工具
- vinkla/laravel-hashids - Hash ID 產生器,方便把數字的ID 隱藏(基於Hashids)
過濾與驗證( Filtering ang Validation )
用於過濾和驗證資料的庫
- ircmaxell/filterus - 一個簡單的PHP過濾庫
- Respect/Validation - 一個簡單的驗證庫
- vlucas/valitron - 另一個資料驗證庫
- cakephp/validation - 另一個資料驗證函式庫
- illuminate/validation - Laravel的驗證庫
- php-readability - 內容分析演算法
- codeguy/Upload - 一個處理檔案上傳和驗證的函式庫
- rdohms/DMS-Filter - 一個基於標註的過濾庫
- romaricdrigon/MetaYaml - 支援YAML、JSON和XML的一個模式驗證函式庫
- ronanguilloux/IsoCodes - 驗證不同ISO和ZIP編碼的庫
- aura/filter - Aura 資料驗證組件
- symfony/validator - Symfony 資料驗證元件
- dwightwatson/validating - 以Trait 的方式來實作Eloquent 資料模型保存的時候自動驗證
- Propaganistas/Laravel-Phone - 手機號碼、電話號碼驗證支持
- felixkiss/uniquewith-validator - 表單驗證規則增加欄位之間的唯一性驗證
- cviebrock/image-validator - 圖片尺寸驗證
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 )
快取資料的庫
- symfony/cache - Symfony遵循PSR-6實現的快取元件
- Alternative PHP Cache (APC) - PHP的開源操作碼快取
- Doctrine Cache - 一個快取庫.
- Zend Cache - 另一個快取庫
- Cake Cache - 一個用於快取的函式庫
- Stash - 另一個快取庫
- CacheTool - 一個清除APC/opcode快取的命令列工具
- PhpFastCache - PHP 快取庫
- desarrolla2/Cache - 一個提供多種Adapter的快取庫
- laruence/yac - Yac 是為PHP實現的一個基於共享記憶體, 無鎖的內容Cache
- liexusong/pcache - Extension for PHP local cache
- Shies/PHP7-buffer - PHP的高效能local cache擴展
資料結構與儲存( Data Structure and Storage )
實現資料結構與儲存技術的庫
- IlluminateSupportCollection - Laravel提供的流暢、便利的封裝來操控陣列資料的集合庫
- Collections - 一個從Laravel拆離出來的集合庫
- Ardent - 一個資料結構庫
- Cake Collection - 一個簡單的集合庫
- Collections - 一個集合抽象庫
- Fractal - 一個將複雜資料結構轉換為JSON輸出的函式庫
- PHP Collections - 一個簡單的集合庫
- Serializer - 用於序列化和反序列化資料的庫
- Zend Serializer - 另一個用於序列化和反序列化資料的函式庫
- PHP Object Storage - 一個用於物件儲存的函式庫
- Totem - 一個管理和建立資料修改集的庫
- PINQ - PHP實時Linq函式庫
- JsonMapper - 一個將內嵌JSON結構映射到PHP類別上的庫
- php-jsonq - A PHP query builder for JSON
- DeepCopy - 創建物件的深層副本( 克隆)
通知( Notifications )
關於通知的庫
- filp/nod - 一個通知庫
- wrep/notificato - 一個處理推播訊息的函式庫
- Ph3nol/NotificationPusher - 裝置推播通知的獨立函式庫
- namshi/notificator - 一個輕量級通知庫
- davibennun/laravel-push-notification - App 的Push Notification 發送工具(支援蘋果的APNS 和安卓的GCM)
- edvinaskrucas/notification - 頁面訊息提醒的元件
部署( Deployment )
用於專案部署的程式庫
- tamagokun/pomander - 一個PHP應用的部署工具
- rocketeers/rocketeer - PHP的快速和簡單部署器
- laravel/envoy - Laravel 官方出品的簡單的部署工具
- aerialls/Plum - 一個部署庫
- deployphp/deployer - 部署工具
- meolu/walle-web - 一個開源的web程式碼發布管理系統
- Piplin - Piplin是一款免費、開源的持續整合與部署系統,適用於軟體的自動化建置、測試和部署相關的各種應用情境。
國際化與在地化(Internationalisation and Localisation)
用於國際化(I18n)和本地化(L10n)的庫
- auraphp/Aura.Intl
- cakephp/i18n - 翻譯和在地化訊息
- symfony/translation
- illuminate/translation
- Gettext - PHP library to collect and manipulate gettext (.po, .mo, .php, .json, etc)
- zend/i18n
- mcamara/laravel-localization - Laravel 本地化功能增強
- dimsav/laravel-translatable - 資料庫的多語言翻譯方案
- webpatser/laravel-countries - 世界所有國家資料(包括首都匯率等)
第三方API( Third Party APIs )
存取第三方API/SDK的庫
- mailgun-php - Mailgun's Official SDK for PHP
- wechat - 讓微信開發更簡單
- Qiniu/sdk - Qiniu Resource Storage SDK for PHP
- Qiniu/qshell - qshell是利用七牛文件上公開的API實現的一個方便開發者測試和使用七牛API服務的命令列工具。
- tencentyun/wafer - 快速建立具備彈性能力的微信小程序
- maxmind/GeoIP2-php - MaxMind GeoIP2 地理位置服務
- PingPlusPlus/pingpp-php - ping++聚合支付SDK
- mgp25/Instagram-API - Instagram的私有API
- aws/aws-sdk-php - AWS 服務的開發者工具包
- bugsnag/bugsnag-laravel - Bugsnag 服務整合包
- maknz/slack - Slack 服務的集成
- lyrixx/twitter-sdk - 一個經過完全測試的Twitter SDK
- thujohn/twitter - Twitter API 的支持
- overtrue/weather - 基於高德開放平台介面的PHP 天氣資訊元件
- aliyun/aliyun-oss-php-sdk - 阿里雲物件存儲
- aliyun/openapi-sdk-php - Alibaba Cloud SDK for PHP
- overtrue/laravel-filesystem-qiniu - Laravel filesystem Qiniu
- jacobcyl/Aliyun-oss-storage - 阿里雲OSS laravel擴展
- overtrue/easy-sms - 滿足多種發送需求的簡訊發送元件
- mingyoung/dingtalk - 釘釘SDK
- wowiwj/ding-notice - 釘釘推播機器人訊息發送laravel擴充包
擴充( Extensions )
幫助建構PHP擴充的庫
- Zephir - 用於開發PHP擴充的一種在PHP和C++間的編譯語言
- PHP CPP - 一個用來開發PHP擴充的C++函式庫
- PHP-X - C++ wrapper for Zend API
PHP 安裝(PHP Installation)
幫助安裝和管理PHP
- HomeBrew - 一個OSX的套件管理工具
- HomeBrew PHP - HomeBrew中PHP的安裝包
- PHP OSX - 一個OSX中的PHP安裝器
- PHP Brew - 一個PHP版本管理工具和安裝器
- PHP Env - 另一個PHP版本工具
- PHP Switch - 另一個PHP版本工具
- PHP Build - 另一個PHP版本工具
- VirtPHP - 一個創建和管理分離的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
- Netbeans
- Eclipse for PHP Developers
- PhpStorm
Web 應用程式(Web Applications)
基於Web的應用程式和工具
- 3V4L - Online PHP shell
- DBV - 資料庫版本控制應用程式
- PHP Queue - 管理佇列的後端程序
- MailCatcher - 一個接受和檢視郵件的程序
- Cachet - 一個開源的網站狀態展示系統(如: status.github.com )
- phpRedisAdmin - Redis 管理工具
- phpPgAdmin - PostgreSQL管理工具
- phpMyAdmin - MySQL管理工具
- rockmongo - MongoDB管理工具
- Grav - Powerful Flat-File CMS
- Piwik - 網頁統計
- YOURLS - 短網址產生系統
- Nextcloud server - 開源私有雲系統(a safe home for all your data)
- magento2 - 開源的PHP電子商務系統
- laravel-admin - 基於laravel的後台管理開發框架
- Crinsane/LaravelShoppingcart - 一個簡單的購物車模組實現
- CachetHQ/Cachet - Cachet是一個開源的狀態頁系統(提供了允許你取得、新增以及刪除事件、元件和指標的API)
- flarum/flarum - 優雅簡潔的輕論壇
- roots/bedrock - WordPress部署工具
- monicahq/monica - 個人關係管理CRM
基礎設施(Infrastructure)
提供PHP應用程式和服務的基礎設施
- appserver.io - 基於PHP的多執行緒應用程式伺服器
- php-pm - 進程管理器,增壓器和PHP應用程式的負載平衡器
資料庫中間件( DB Proxy )
用於讀寫分離、分庫分錶等
- kingshard - 金山開源的資料庫中間件
- heisenberg - 百度開源的資料庫中間件
- Oceanus - 58同城開源的資料庫中間件
- Atlas - 360開源資料庫中間件
- DBProxy - 美團評論基於Atlas的資料庫中間件
- Mycat
- TiDB - 分散式資料庫
RPC框架
遠端過程呼叫框架
- apache/thrift - Apache Thrift
- grpc/grpc - Google的開源框架
- protobuf
- alibaba/dubbo - 阿里巴巴開源的RPC框架
- TarsCloud/Tars - 騰訊基於名字服務使用Tars協議的高效能RPC開發框架
- weibocom/motan - 微博輕量級RPC框架
- dangdangdotcom/dubbox - 當當網維護的dubbox
- baidu/sofa-pbrpc - 百度開源的sofa-pbrpc
- laruence/yar - Light, concurrent RPC framework for PHP & C
- Hprose - 高效能跨語言RPC
- 其他
- Dora-RPC
- workerman-JsonRpc
非同步網路通訊框架( Asynchronous Event Driven Framework )
- Swoole
- Workerman
- Gearman - 任務分發系統
- phpdaemon
- ReactPHP
- amphp/amp - A non-blocking concurrency framework for PHP applications.
- async - Easily run code asynchronously
- kraken-php - Asynchronous & Fault-tolerant PHP Framework for Distributed Applications.
- recoilphp/recoil - Asynchronous coroutines for PHP 7.
規則引擎( Rules Engine )
- HoaRuler - Hoa專案的規則引擎
- Ruler - 簡單的無狀態的規則引擎
- Rules - PHP簡易規則引擎
其他( Miscellaneous )
不屬於以上分類的有用的類別庫和工具
- overtrue/pinyin - 漢字轉拼音的庫
- jifei/Pinyin - 漢字轉拼音的庫
- class.upload.php - 檔案上傳處理類
- php-paginator - 分頁處理類
- Anahkiasen/underscore-php - Underscore.js 類似的PHP 語法支持
- Flexihash - 一致性hash函式庫
- Eden - 一個PHP快速開發類庫,它包含很多元件用來自動載入、事件驅動、文件系統、快取、範本、國際化、資料庫、web服務、支付網關、裝載和雲端服務技術。
- html-parser - html解析工具
- PHPCrawl - PHP的爬蟲框架
- Tig - 命令列下的Git 瀏覽器
- copywriting-correct - 中英文文案排版修正器
- PHP-ML - PHP 機器學習函式庫
- BotMan - 聊天機器人庫
- barryvdh/laravel-ide-helper - 使用IDE 開發Laravel 專案的好幫手
- davejamesmiller/laravel-breadcrumbs - 頁面麵包屑工具
- laracasts/PHP-Vars-To-Js-Transformer - 將PHP 變數轉換為JavaScript 變數
- Laravelium/laravel-sitemap - Sitemap 生成工具
- yajra/laravel-datatables - jQuery DataTables 的後端支持
- formers/former - 強大的表單建構器
- Laravelium/laravel-feed - Feed 資訊流產生器