我一直在使用CakePHP了一會兒,我仍然真的不明白什麼應該/Lib
去VS /Plugin
VS /Vendor
。我知道插件基本上都是帶有自己的控制器的迷你應用程序等等。但是在很多情況下,三種都可以。有人可以對此有所瞭解嗎?CakePHP的:我應該在/ lib中去VS /供應商VS /插件
回答
庫
包含不來自第三方或 外部供應商第一方庫。這使您可以將組織的內部庫與供應商庫分開。
插件
包含plugin包。
供應商
任何第三方類或庫應該放在這裏。 這樣做可以使用App :: import('vendor', 'name')函數輕鬆訪問。敏銳的觀察者會注意到,這似乎是多餘的, 因爲在我們目錄 結構的頂層還有一個vendor文件夾。當我們討論管理多個應用程序和更復雜的系統設置時,我們將討論兩者之間的差異。
來源:http://book.cakephp.org/2.0/en/getting-started/cakephp-folder-structure.html
爲了進一步澄清,Lib
建議你自己寫的庫。這可能只是一些課程或整個圖書館。對於可以從github下載的庫或腳本,建議使用Vendor
。 Plugin
嚴格用於cakephp框架插件。
關於Lib
vs Vendor
對於您自己的腳本或第三方腳本,我沒有意識到任何區別。我已經在兩個位置都放入了自己的腳本以及第三方腳本,但沒有任何區別。這只是一個推薦的方式來組織你的文件。
您可以使用App::import()
加載腳本Lib
或Vendor
,這與require_once()
相同。要加載框架文件或遵循cakephp慣例的自己的腳本,您可以使用App::uses()
。這使用使用App::path()
或App::build()
定義的路徑來查找文件。
謝謝!我認爲差異更加清晰。你還介意添加一些關於選擇/ Lib vs Vendor的含義嗎?例如,Vendor中的東西可以通過'App :: import()'來訪問,而Lib的東西似乎需要'App :: uses()'和其他一些配置。我確信,爲什麼他們的實施方式不同,有一個很好的理由,但這對我來說並不明顯。 – emersonthis
根本不明顯。有兩個似乎是多餘的。特別是在Lib和Vendor中訪問文件是完全不同的。 – zmonteca
- 1. Nette:模型vs供應商lib
- 2. 供應商vs供應商混淆
- 3. CakePHP的3.0供應商類
- 4. 什麼是VS我應該考慮的Resharper插件的列表?
- 5. 我應該創建什麼樣的VS 2010插件/擴展?
- 6. elasticsearch multi_match VS應該
- 7. RSpec的應該be_true VS應該== TRUE
- 8. Cakephp 3加載供應商文件
- 9. Tomcat 6 vs 7 - lib vs shared/lib - jar只?
- 10. 包含js/css模塊在供應商/ lib目錄中的Rails
- 11. vs vs 2008中我失去了intellisense
- 12. git沒有響應我的rails供應商/插件目錄
- 13. cakephp上供應商和應用程序/供應商之間的區別
- 14. onClick vs onTouchTap,我應該使用什麼?
- 15. 在cakephp的組件中創建供應商類對象
- 16. WebForms vs MVC vs CMS - 爲電子商務應用程序提供哪個平臺?
- 17. Angular2提供商自舉VS @Component
- 18. 位圖碰撞vs SVG vs Box2D?我應該使用什麼?
- 19. CakePHP的組件VS VS Libs和shell
- 20. CakePHP AMFPHP 2.1供應商集成
- 21. 什麼時候應該使用hstack/vstack vs append vs concatenate vs column_stack
- 22. 我應該在哪裏使用CSS供應商前綴
- 23. 我應該如何在Go 1.6使用供應商?
- 24. 在cakephp中發佈導入供應商文件
- 25. 我應該如何在VS中使用以下代碼?
- 26. 差異從申請VS應用插件
- 27. 供應商插件圖像丟失在我的rails 5應用程序
- 28. CakePHP 3.x供應商文件夾中的Eclipse錯誤
- 29. 加載供應商文件中的CakePHP 2.0
- 30. WPF vs XBAP vs Silverlight ...哪個適合商業應用?
http://stackoverflow.com/questions/24261432/how-to-use-common-function-in-helper-and-component-in-cakephp – trante