awesome-php中英文資源整理(同步更新)

来源:http://www.cnblogs.com/genialx/archive/2016/10/07/5937106.html
-Advertisement-
Play Games

收集整理一些常用的PHP類庫,資源以及技巧. 有中英兩種版本,以便在工作中迅速的查找所需。 ...


中文版

收集整理一些常用的PHP類庫, 資源以及技巧. 以便在工作中迅速的查找所需…


  • 這個列表中的內容有來自 awesome-php 的翻譯, 有來自開發者周刊以及個人的積累等.
  • 一個前端組件的列表 awesome-frontend 推薦

學習資源

PHP相關的有參考價值的社區,博客,網站,文章,書籍,視頻等資源


依賴管理( Dependency Management )

用於依賴管理的包和框架

框架( Frameworks )

Web開發框架

  • Symfony2 – 由獨立組件構成的框架(SP2)
  • Zend Framework 2 – 同樣是由獨立組件構成的框架(ZF2)
  • Laravel 5 – 簡潔優雅的PHP Web開發框架(L5)
  • Aura PHP – 獨立組件的框架
  • Yii2 – 用於開發大型Web應用的高性能PHP框架
  • Nette – 同樣是由獨立組件構成的框架
  • PPI Framework 2 – 一個交互性的框架
  • CakePHP – 一個高效的應用開發框架(CP)
  • Phalcon – 一個作為C擴展的框架
  • Yaf – 鳥哥的C擴展的框架
    • swoole-yaf – 基於 Swoole 及 Yaf 的開發框架
    • yaf – 另一個基於 Swoole 及 Yaf 的開發框架
  • Zan PHP Framework – 有贊開源的 PHP 框架

組件( Components )

配置( Configuration )

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

  • Yaconf – 一個高性能的配置管理擴展
  • config – 一個輕量級的配置載入器, 支持 PHP, INI, XML, JSON, YAML files
  • Zend-config

微框架( Micro Frameworks )

 

微型框架和路由

  • Silex – 基於Symphony2組件的微型框架
  • Slim – 另一個簡單的微型框架
  • Bullet PHP – 用於構建REST APIs的微型框架
  • Lumen – 基於Laravel的微型框架
  • Proton – 一個微型PHP框架
  • blink – 一個為構建 “long running” 服務而生的 Web 微型高性能框架

路由( Routers )

  • Fast Route – 一個高效路由庫
  • Route – 基於Fast Route的路由庫
  • Pux – 另一個高效的路由庫
  • Klein – 一個靈活的路由庫
  • Macaw – 一個簡單的 PHP 路由器,超級精簡、快速而且很性感。

模板引擎( Templating )

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

  • Twig – 一種綜合的模板語言
  • Twig Cache Extension – 用於Twig的模板片段緩存庫
  • Mustache – PHP實現的Mustache模板語言
  • Phly Mustache – 另一個PHP實現的Mustache模板語言
  • MtHaml – PHP實現的HAML模板語言
  • PHPTAL – PHP實現的TAL模板語言
  • Plates – 一個原始的PHP模板庫
  • Lex – 一個輕量級模板解析器

靜態站生成器( Static Site Generators )

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

  • Sculpin – 將Markdown和Twig轉換為靜態HTML的工具
  • Phrozn – 另一款ithub將Textile、Markdown和Twig轉為HTML的工具
  • Spress
  • Couscous – 將Markdown 文檔轉換成 HTML 發佈到Github Page 的工具

HTTP

用於HTTP和抓取網站的庫

  • Guzzle – 一個完整的HTTP客戶端
  • Buzz – 另一個HTTP客戶端
  • Requests – 一個簡單的HTTP庫
  • HTTPFul – 一個鏈式HTTP客戶端
  • Goutte – 一個簡單的Web抓取器
  • PHP VCR – 一個錄製和回放HTTP請求的庫
  • php-curl-class – PHP的Curl類

中間件( Middlewares )

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

URL

解析URL的庫

  • Purl – 一個URL操作庫
  • PHP Domain Parser – 一個本地的尾碼解析器
  • Uri – 一個簡單的URL操作庫

郵件( Email )

用於發送和解析Email的庫

文件操作( Files )

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

  • Gaufrette – 一個文件流的抽象層
  • Flysystem – 另一個文件流的抽象層
  • Canal – 一個檢查互聯網媒體類型的庫
  • Apache MIME Types – 一個解析Apache MIME類型的庫
  • Ferret – 一個MIME檢測庫
  • Hoa Mime – 另一個MIME檢測庫
  • Lurker – 一個資源跟蹤庫
  • PHP File Locator – 一個在大型項目中定位文件的庫
  • PHP FFmpeg – 一個用於FFmpeg視頻包裝的庫
  • CSV – 一個CSV數據操作庫

流( 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 – 一個事件驅動的測試框架

持續集成( Continuous Integration )

持續集成的庫和應用

  • Travis CI – 一個持續集成的平臺
  • SemaphoreCI – 一個給開源程式和私有項目的持續集成平臺
  • PHPCI – 一個PHP的開源持續集成平臺
  • Sismo – 一個持續的測試伺服器庫
  • Jenkins – PHP支持的持續集成平臺
  • JoliCi – PHP開發的由Docker支持的持續集成客戶端

文檔( Documentation )

生成項目文檔的庫

  • Sami – 一個API文檔生成器
  • APIGen – 另一個API文檔生成器
  • PHP Documentor 2 – 文檔生成器
  • phpDox – 一個PHP項目的文檔生成器(不僅僅是API文檔)

安全( Security )

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

密碼( Passwords )

處理和存儲密碼的庫和工具

代碼分析( Code Analysis )

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

結構( Architectural )

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

  • PHP Option – 一個PHP選項類型的庫
  • Ruler – 一個簡單的無狀態的產生環境規則的引擎
  • Finite – 一個簡單的PHP有限狀態機
  • Compose – 一個功能組合庫
  • Monad PHP – 一個簡單Monad庫
  • Patchwork – 一個重新定義用戶的函數庫
  • Galapagos – 語言轉換進化
  • Design Patterns PHP – 一個使用PHP實現的設計模式實例庫
  • Functional PHP – 一個函數式編程庫
  • Lib Accessor – 一個簡化訪問的庫
  • Iter – 一個使用生成器提供迭代原語的庫

調試和性能( 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.io – 實現保存xhprof數據以及展示數據的UI
    • xhgui – 另一個保存xhprof數據以及展示數據的UI
  • Blackfire.io – 一個低開銷的代碼探查器
  • Kint – 一個調試和性能分析的工具

構建工具( 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 )

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

  • Assetic – 一個資源管理的管道庫
  • Pipe – 另一個資源管理的管道庫
  • Munee – 一個資源優化庫
  • JShrink – 一個JavaScript的壓縮庫
  • Puli – 一個檢測資源絕對路徑的庫

地理定位( Geolocation )

使用經緯度編碼地址的庫

  • GeoCoder – 一個地理編碼庫
  • GeoTools – 一個地理工具相關的庫
  • PHPGeo – 一個簡單的地理庫
  • GeoJSON – 一個GeoJSON的實現

日期與時間( Date and Time )

處理日期和時間的庫

  • Carbon – 一個簡單的日期時間API擴展
  • ExpressiveDate – 另一個日期時間API擴展
  • CalendR – 一個日曆管理的庫

事件( Event )

事件驅動或非阻塞事件迴圈實現的庫

日誌( Logging )

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

  • Monolog – 一個綜合的日誌類庫
  • KLogger – 一個易於使用的PSR-3日誌類
  • Analog – 一個機遇閉包的微型日誌包
  • SeasLog – 一個高效的日誌擴展

電子商務( E-commerce )

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

  • OmniPay – 一個多網關支付處理的框架
  • Payum – 一個用於支付的抽象庫
  • Sylius – 一個開源的電子商務解決方案
  • Thelia – 另一個開源的電子商務解決方案
  • Money – PHP實現的Fowler金錢模式
  • Sebastian Money – 一個處理貨幣價值的庫
  • Swap – 一個匯率庫

PDF

處理PDF文件的庫和軟體

  • Snappy – 一個PDF和圖像的生成庫
  • WKHTMLToPDF – 一個將HTML轉換為PDF的工具
  • PHPPdf – 一個將XML轉化為PDF和圖片的庫

Office

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

資料庫( Database )

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

  • Doctrine – 一個完整的DBAL和ORM
  • Doctrine Extensions – 一個Doctrine行為的擴展集合
  • Propel – 一個快速的ORM,遷移和查詢庫
  • Eloquent – Laravel 5 ORM(L5)
  • LazyRecord – 一個快速的ORM
  • Baum – 一個Eloquent的嵌套集合
  • Spot2 – MySQL的ORM映射器
  • RedBean – 一個輕量級、易配置的ORM
  • Pomm – 用於PostgreSQL的一個對象模型管理器
  • ProxyManager – 用於數據映射生成代理對象的工具集合
  • Cake ORM – 對象關係映射器, 實現了使用數據映射模式(CP)
  • Medoo – 一個輕量級的加速開發的ORM

遷移( Migrations )

用於管理資料庫模式和遷移的庫

非關係型資料庫( NoSQL )

處理NoSQL後端的庫

隊列( Queue )

處理事件和任務隊列的庫

搜索( Search )

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

命令行( Command Line )

構建命令行工具的庫

  • symfony/console – Symfony命令行工作組件
  • Boris – 一個微型的PHP REPL
  • PsySH – 另一個PHP REPL
  • Pecan – 一個事件驅動,非阻塞的shell
  • GetOpt – 一個命令行選擇解析器
  • OptParse – 另一個命令行選擇解析器
  • Commando – 一個簡單的命令行選擇解析器
  • GetOptionKit – 同樣還是一個命令行選擇解析器
  • Cron Expression -計算cron運行日期的庫
  • ShellWrap – 一個簡單的命令行包裝庫
  • Hoa Console – 另一個命令行庫
  • Shunt -一個在多台遠程機器上並行運行的命令行庫
  • Cilex – 構建命令行工具的小型框架
  • CLImate – 構建命令行工具的框架(可以輸出顏色和特殊格式)
  • Webmozart Console

定時任務( Crontab )

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

  • Dispatcher – 基於Laravel的定時任務管理
  • swoole-crontab – 基於swoole的定時器程式,支持秒級處理
  • jobby – 一個 PHP 的定時任務管理器
  • cronlingo – Express crontabs as human friendly phrases

身份驗證( Authentication and Authorization )

實現身份驗證模式的庫

標記( Markup )

處理標記的庫

字元串( Strings )

解析和操縱字元串的庫

  • ANSI to HTML5 – 一個將ANSI轉換為HTML5的庫
  • Patchwork UTF-8 – 處理UTF-8格式字元串的便攜庫
  • Hoa String – 另一個UTF-8格式的字元串庫
  • Stringy – 一個多位元組支持的字元串操縱庫
  • Color Jizz – 一個處理和轉換顏色的庫
  • UUID – 生成UUIDs的庫
  • Slugify – 一個將字元串轉換為slug格式的庫
  • Urlify – 一個Django URLify.js的PHP埠
  • Text – 一個文本處理庫
  • SQL Formatter – 一個用於格式化SQL語句的庫
  • UA Parser – 一個解析UA(User Agent)字元串的庫
  • Device Detector – 另一個解析UA(User Agent)字元串的庫
  • Mobile-Detect – 一個輕量級的檢測移動設備的庫(包括桌面設備)
  • Browser – 檢測關於用戶的瀏覽器環境

數字( Numbers )

處理數字的庫

  • Numbers PHP – 一個處理數字的庫
  • Math – 處理較大數字的庫
  • ByteUnits – 一個在二進位和測量系統中解析、格式化和轉換位元組單位的庫
  • PHP Units of Measure – 一個測量單位間轉換的庫
  • PHP Conversion – 另一個測量單位間轉換的庫
  • LibPhoneNumber for PHP – PHP實現的Google電話號碼處理系統庫
  • hashids.php – 用來把整數生成唯一字元串(比如:通過加密解密id來隱藏真實id)

過濾和驗證( Filtering ang Validation )

用於過濾和驗證數據的庫

REST和API

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

  • Apigility – 一個使用Zend Framework2構建的API構建器
  • Hateoas – 一個HATEOAS REST的web服務庫
  • HAL – 一個超文本應用語言(HAL)構建庫
  • Negotiation – 一個內容協商庫
  • Drest -一個將Doctrine實體展現為REST資源結點的庫
  • Restler – 一個將PHP方法展現為RESTful web API的輕量級框架
  • fractal – [最佳實踐]數據返回的統一化處理

緩存( Caching )

緩存數據的庫

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

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

  • Ardent – 一個數據結構庫
  • PHP Collections – 一個簡單的集合庫
  • Serializer – 用於序列化和反序列化數據的庫
  • Zend Serializer – 另一個用於序列化和反序列化數據的庫
  • PHP Object Storage – 一個用於對象存儲的庫
  • Fractal – 一個將複雜數據結構轉換為JSON輸出的庫
  • Totem – 一個管理和創建數據修改集的庫
  • PINQ – PHP實時Linq庫
  • JsonMapper – 一個將內嵌JSON結構映射到PHP類上的庫
  • Cake Collection – 一個簡單的集合庫

通知( Notifications )

關於通知的庫

部署( Deployment )

用於項目部署的庫

  • Pomander – 一個PHP應用的部署工具
  • Rocketeer – PHP的快速和簡單部署器
  • Envoy – 使用PHP運行SSH任務的工具
  • Plum – 一個部署庫
  • Deployer – 一個部署工具
  • walle-web – 一個開源的web代碼發佈管理系統

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

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

第三方API( Third Party APIs )

訪問第三方API的庫

擴展( Extensions )

幫助構建PHP擴展的庫

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

PHP 安裝(PHP Installation)

幫助安裝和管理PHP

開發環境(Development Environment)

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

  • Vagrant – 一個輕便的創建開發環境的工具
  • Ansible – 一個簡單的業務流程框架
  • Puppet – 伺
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 註明:相關資料參考來自網路 PHP中使用fopen()函數打開文件,函數語法fopen(filename,mode,include_path,context),filename為要打開的文件,mode為訪問類型,include_path和context為可選。 mode說明 r 只讀方式打開,在文件 ...
  • 【轉自】http://blog.csdn.net/foamflower/article/details/5713604 isNotEmpty將空格也作為參數,isNotBlank則排除空格參數 StringUtils方法的操作對象是java.lang.String類型的對象,是JDK提供的Strin ...
  • 在網路編程中,出於節約帶寬或者編碼的需要,通常需要以原生方式處理long和int,而不是轉換為string。 public class ByteOrderUtils { public static byte[] int2byte(int res) { byte[] targets = new byt ...
  • 什麼是Optional對象 Java 8中所謂的Optional對象,即一個容器對象,該對象可以包含一個null或非null值。如果該值不為null,則調用isPresent()方法將返回true,且調用get()方法會返回該值。 另外,該對象還有其它方法: 如可以使用orElse()方法給Opti ...
  • 裝飾器實際上就是函數,可以在裝飾器中置入通用功能的代碼來降低程式的複雜度。 功能: >引入日誌 >增加計時邏輯來檢測性能 >給函數加入事務的能力 例子1、簡單裝飾器 例子2、含返回值的裝飾器 例子3、複雜裝飾器 這裡是含參數的裝飾器,在裝飾器中調用before方法和after方法,完成對List方法 ...
  • RabbitMQ簡介 AMQP,即Advanced Message Queuing Protocol,高級消息隊列協議,是應用層協議的一個開放標準,為面向消息的中間件設計。消息中間件主要用於組件之間的解耦,消息的發送者無需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、隊列、路由(包括 ...
  • f you are not familiar with MySQL stored procedures or want to review it as a refresher, you can follow the MySQL stored procedures tutorial. We will ...
  • 為什麼要引入繼承?   還是做一個媒體庫,裡面可以放CD,可以放DVD。如果把CD和DVD做成兩個沒有聯繫的類的話,那麼在管理這個媒體庫的時候,要單獨做一個添加CD的函數,單獨做一個添加DVD的函數,如果還要往這個媒體庫里添加其他的媒體類,還要再創建另一個添加函數。我們說這樣的代碼不具備可擴展性。... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...