PHP開發常用類庫包搜集整理
Databse 數據庫ORM
Doctrine 2
- License : MIT
- Source Code
- Allo點評:Doctrine是功能最全最完善的PHP ORM,社區一直很活躍,對NoSQL也非常迅速的作出了跟進與支持。但之所以沒有說Doctrine是最好的,是因為我對PHP究竟有沒有必要使用如此 龐大的ORM還心存疑慮,平心而論Doctrine的入門門檻實在有些高,尤其是DBAL的提出,更是要把開發者牢牢綁定在Doctrine這艘大船上, 用與不用,還是要仔細權衡。 </ul>
- License : New BSD
- Source Code
- Allo點評:相比起Doctrine,RedBean輕巧的簡直要飛起來,這兩個輪子就是一組最好的比照,是大而全,還是小而精,根據項目選擇吧。 </ul>
- License : MIT
- Source Code
- Allo點評:老牌php文檔生成工具。 </ul>
- License : MIT
- Source Code
- Allo點評:Faker是一個很神奇的項目,會自動生成擬真的數據,包括用戶資料、長文本、IP、日期等等,在網站上線前測試時非常好用。 </ul>
- License : MIT
- Source Code
- Allo點評:雖然PHP5內置的Datetime類已經足夠應付一般需求,不過Carbon所提供的一些更人性化的處理則更符合實際需求,如果是時間相關的項目應該考慮使用。 </ul>
- License : MIT
- Source Code
- Allo點評:文件系統幾乎是所有項目都會遇到的問題,Gaufrette為常見的文件系統提供了一套統一接口,包括本地文件/FTP/Dropbox/GridFS/Zip/AmazonS3等等,是大型系統必備的組件。 </ul>
- License : MIT
- Source Code
- Allo點評:Assetic可以說生來就是為了多模塊的項目而存在的,有了Assetic,可以將分散在各模塊中的前端文件編譯、合并、壓縮。可以讓開發人員專注于代碼的編寫而不是前端文件的生成。 </ul>
- License : MIT
- Source Code
- Allo點評:LESS編譯器的php版本。不過對于復雜的LESS項目,比如bootstrap,編譯的結果與NodeJS原版還是有差異,只能做為Assetic的一個補充。 </ul>
- License : MIT
- Source Code
- Allo點評:PHP版本的CSS/JS壓縮器。 </ul>
- License : MIT
- Source Code
- Allo點評:Requests實現的非常靈巧,底層默認沒有使用cURL而是采用fsockopen作為通信手段,非常適合集成在一些小型項目中。 </ul>
- License : MIT
- Source Code
- Allo點評:另一個輕量級的HTTP客戶端實現,文檔上不夠豐富。獨到之處在于內置了事件機制,可以更靈活的集成。 </ul>
- License : LGPL v2.1+
- Source Code
- Allo點評:凡是有WYSIWYG功能的項目,XSS以及惡意的提交都會成為一個頭痛的問題。HTMLPurifier提供了完整的HTML校驗與糾錯,又無需安裝tidy擴展。 </ul>
- License : MIT
- Source Code
- Allo點評:解析HTML為DOM并且可以使用jQuery選擇器操作DOM,如果需要提取HTML頁面內容而不考慮高性能,那么用PHP Simple HTML DOM可以很愜意。 </ul>
- License : MIT
- Source Code
- Allo點評:Imagine為幾大圖形處理庫提供了一個統一接口,即后臺可以為Gd、Imagick、Gmagick的任意一種,而代碼保持不變。其實Pear也提供過類似的庫Image_Transform,但是Imagine明顯更勝一籌。我還基于Imagine做了一個可以用URL操作圖片的項目EvaThumber,可以更加簡單的集成。
- 應用范圍:縮略圖生成等任何圖形相關的功能。 </ul>
- License : MIT
- Source Code
- Allo點評:可以非常簡單的規定Log格式,并有眾多的后端支持。雖然像Zend Framework也內置了Zend\Log這樣的組件,但是Monolog仍然是最全面專業的Log處理首選方案
- 應用范圍:幾乎所有需要線上調試或者收集用戶信息的系統 </ul>
- License : New BSD License
- Source Code
- Allo點評:Markdown在輕量級標記語言中已經儼然有一統天下的趨勢,PHP Markdown應該是目前以PHP編寫的最好的Markdown解析器。當然一般來說使用Markdown作為標記語言需要搭配一個JS編輯器,比如PageDown-Bootstrap
- 應用范圍:任何中長篇的用戶數據錄入,比如用戶評論、Blog等場景。可以減輕用戶錄入負擔,并且有效的防止XSS </ul>
- License : MIT
- Source Code
- Allo點評:Ruby項目Active Merchant的php版本。對PayPal、Authorize.net等多家支付網關提供了統一的接口。
- 應用范圍:需要支付網關的項目,有國內支付寶等網關支付需求的完全可以貢獻代碼 </ul>
- License : MIT
- Source Code
- Allo點評:統一接口的支付網關,支持的支付接口更豐富一些。 </ul>
- License : MIT
- Source Code
- Allo點評:php-resque是Ruby項目resque在php下的實現。雖然Gearman也是一個不錯的選擇,但是resque的構架設計更加簡潔清晰,更加符合KISS原則。簡單用法可以參看用PHP實現守護進程任務后臺運行與多線程一文
- 應用范圍:需要后臺任務的系統,比如郵件發送、同步信息等需求。 </ul>
- License : New BSD License
- Source Code
- Allo點評:如果說對模板引擎的印象還停留在Smarty的階段,那么你真的已經落后于時代了。Twig是目前關注度最高的PHP模板引擎,比Smarty提供了更簡約和易懂的語法。當然如果項目沒有主題切換這樣的需求,php本身就是最好的模板引擎。
- 應用范圍:有皮膚、主題切換需求的項目,可以避免php模板帶來的安全問題 </ul>
RedBeanPHP
Documents & Testing 文檔與測試
phpDocumentor 2
Faker
Datetime 時間處理
Carbon
File System 文件系統
Gaufrette
Front-end 前端性能
Assetic
lessphp
minify
HTTP Client HTTP客戶端
Requests
Buzz
HTML & Dom
HTMLPurifier
PHP Simple HTML DOM Parser
Image 圖形處理
Imagine
Log處理
Monolog
Markups 標記語言
PHP Markdown
Payment Gateways 支付網關
Aktive Merchant for PHP
Omnipay
Queue 任務隊列
php-resque
Templating 模板引擎
Twig
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!