php框架有哪些 初學(xué)者如何學(xué)習PHP框架?
初學(xué)者如何學(xué)習PHP框架?很高興能回答你的問題!正好我也是一個PHPer,希望我原來的成長經(jīng)歷能夠幫到你。應(yīng)該學(xué)習什么框架初學(xué)者剛接觸框架,國內(nèi)首選推薦的必然是ThinkPHP(后面用TP代替),國外
初學(xué)者如何學(xué)習PHP框架?
很高興能回答你的問題!
正好我也是一個PHPer,希望我原來的成長經(jīng)歷能夠幫到你。
應(yīng)該學(xué)習什么框架
初學(xué)者剛接觸框架,國內(nèi)首選推薦的必然是ThinkPHP(后面用TP代替),國外框架我首推的是Laravel和Yii 再就是Zend。
先說一下推薦原因,TP框架現(xiàn)在是國內(nèi)唯一的框架,它借鑒了國外很多PHP優(yōu)秀框架的思想,同樣是MVC實現(xiàn),國內(nèi)使用的公司非常多,對接二次開發(fā)和應(yīng)用的組件也比較成熟。(當然我個人用的不多,一直在原創(chuàng)公司,對二次開發(fā)的項目接觸比較少)
Laravel框架是國外非常優(yōu)秀的框架,目前應(yīng)該是全世界使用最多的開源PHP框架了,目前最前的版本是Laravel 6了。簡單說一下優(yōu)點,
1、良好的類庫加載機制
2、豐富的組件支撐
3、標準的PHP代碼開發(fā)規(guī)范
4、成熟的隊列、定時機制
5、集成了相當多的安全機制。
怎么學(xué)習
學(xué)習框架最大的目的是實現(xiàn)你要開發(fā)的項目,但你也要了解框架的實現(xiàn)原理。拿Laravel框架舉例吧。
1、什么是門臉、契約、依賴
2、了解框架的目錄結(jié)構(gòu),知道各個目錄存放文件的作用,知道如何在框架中自動加裁
3、了解控制器、模型、視圖
4、了解路由和中間件是什么
5、知道數(shù)據(jù)庫操作的基本方式和處理過程。
6、了解異常及日志處理
進階:
7、了解PHP框架的安全防范和加密
8、了解第三方組件的使用方式
9、了解隊列、定時器、廣播等組件應(yīng)用
寫得比較多,其實如果把1-6學(xué)習完了,后面可以在項目應(yīng)用中進行慢慢學(xué)習
手打不易,對你有用的話可以關(guān)注我。如果你還有什么問題,可以私信與我聯(lián)系。
當下最流行的PHP開發(fā)框架有哪些?
你好,首先我們談一談“框架”是什么。“php開發(fā)框架”,顧名思義,就是要可靠、安全、高效率地搭建出web應(yīng)用,這也是目的。
那么,框架的優(yōu)勢在哪里?我們?yōu)槭裁匆每蚣??——因為框架可以將?shù)據(jù)庫、緩存、會話等功能組建合并為一,方便使用。
下面我們聊一聊比較流行的三個php開發(fā)框架。
- Lavarel:這是一整套語法簡潔,好理解的web開發(fā)框架。主要的優(yōu)勢集中體現(xiàn)在后期的支持、文檔的全備,還有活躍的社區(qū)上。學(xué)習Lavarel,需要先對PHP語言、面向?qū)ο?、?shù)據(jù)庫的操作有一個基本的學(xué)習基礎(chǔ)。
- ThinkPHP:基于最開始即沿用的簡單結(jié)構(gòu)——mvc和面向?qū)ο蟮妮p量級PHP開發(fā)框架。簡單的語法下增添了原創(chuàng)功能和特性,強力支持了web應(yīng)用的開發(fā)。
- Yii:極其優(yōu)化的性能,對于任何種類的項目而言都很容易露一手。文檔功能十分詳盡,擁有一切你需要學(xué)習的信息。不管是開源的還是私有的應(yīng)用,都可以自由地使用!不論從法律還是財務(wù)上來講!
結(jié)語:
很多朋友都容易有這樣的疑問——這三個框架哪個更好?這里我簡單回答一下,沒有好不好,只有適不適合,如果頭子說yii好,必定就是yii主導(dǎo)地位。
最后分享一個程序猿大大滴提高效率的工具,答案就是——單身。
好,下回見
PHP新手如何成為PHP大牛?
學(xué)習本身就是循序漸進的過程,PHP入門簡單,精通還需要循序漸進。
1. 先從簡單框架開始,比如thinkphp,先從CMS開始研究,推薦thinkcmf,都是國人作品,資料不需要翻譯。
2. HTML,CSS,JavaScript 都需要涉獵,jQuery 這種早期框架,至今仍有用,前沿點的技術(shù)還要掌握angular,reactjs,vue。 類似的還有Ember.js,backbone等,前端框架最亂,ES6,ES7語法上還不斷改進,不要貪多,循序漸進去了解。
3. 終極框架推薦laravel,國外最火,仿Ruby的設(shè)計哲學(xué),類似Java把設(shè)計模式發(fā)揮到極致,所以掌握這個框架主要掌握 控制反轉(zhuǎn)(ioc),依賴注入(DI),其實就是工廠模式(factory),和接口(interface,laravel里的contract契約)。實現(xiàn)技巧利用了PHP的魔術(shù)方法(比如__callStatic)和反射機制,實現(xiàn)優(yōu)雅,號稱為Web藝術(shù)家的框架。
4. MySQL,MongoDB 慢查詢優(yōu)化,緩存設(shè)計,分庫,分表,sharding設(shè)計,SQL優(yōu)化。相當于大半個DBA了。
5. beanstalk或rabbitmq等異步消息隊列的使用等。Redis,memcache的使用,配合具體業(yè)務(wù)場景,有處理高并發(fā)的架構(gòu)能力。
6. LAMP/LNMP的部署,包括應(yīng)用集群,數(shù)據(jù)庫集群,MQ和Redis緩存的集群部署等。相當于大半個DevOps。
技術(shù)的終極是成為一個好的架構(gòu)師,是一個綜合能力的修養(yǎng),新知識的學(xué)習能力,業(yè)務(wù)問題的解決能力,我想PHP大?;菪鲁揭矝]掌握上面這么多,他更精通低層,PHP內(nèi)核,c的擴展等,但他很成功,類似的還有swoole和workman的作者,但要在社區(qū)中樹立這種威信也必須要付出很多,如果想成為技術(shù)牛人,付出這個過程都是必不可少的。
手機打字不易,我也是個PHP程序員,也是頭條作者,會定期在自己的專欄發(fā)些技術(shù)文章,歡迎大家關(guān)注我。上面言論不當之處,也歡迎斧正。
php零基礎(chǔ)可以學(xué)嗎,需要注意些什么?
不能??!國家嚴禁零基礎(chǔ)學(xué),否則,十年以上有期徒刑
PHP如何快速上手?
Windows上的環(huán)境有啥不好配的……可以先看看兄弟連高洛峰老師的視頻教程自學(xué)。
JavaScript和PHP,哪個更難?
javascript運行在客戶端,php運行在服務(wù)端,相比之下,由于php庫函數(shù)多,支持擴展程序,引入了java,C/C 等其他優(yōu)秀思想,解決了復(fù)雜的編程問題下能夠有更好地靈活性,由于php運行于服務(wù)端,支持跨平臺,跨瀏覽器,錯誤更容易處理解決;對于javascript,缺少足夠的庫函數(shù),由于瀏覽器廠商支持的javascript版本不同,因此有些程序不能跨瀏覽器,很多模塊化的編程很難理解,含有,錯誤調(diào)試難度更大,因此php更好學(xué)一些