關於學習PHP的一些參考:
PHP已經在國內流行很多年了,雖然很多人在唱衰PHP,但是對於WEB開發領域,PHP依舊是當之無愧的首選,PHPer隊伍依舊龐大,對於PHPer是否會流行下去,我並不會去過多的評測,畢竟語言之分只會停留在開發的初期,任何語言畢竟還是一門開發的工具,當你需要的時候,任何一門語言都是你手中的利器,當你不需要的時候,再好的語言都是雞肋。所以於我來說這些並不重要,只要依舊有人在學習php,我的這篇博文就是有意義的。下面分享一下想要成為PHPer的升級路線圖:
1.環境搭建
對於新人來講,完全沒有必要把心思花在搭建環境這件事上。在實際的項目中,絕大多數都是運行在Linux上,在Linux上通過幾條命令就可以解決的問題,但是在windows上就需要花很大的心思來一點點配置環境,但是新人直接學習linux也是需要花費精力的。所以在學習初期,完全建議采用集成環境來開發,把全部的心思放在學習語法上面。
在此推薦XAMPP、AppServ、PHPStudy、WampServer等集成環境。
2.前端基礎知識
在這個階段,需要學習html+css,同時理解web網站開發的基本原理,能夠自己搭建靜態的網頁基本上就可以了。有很多人建議新人去學習JavaScript、jQuery之類的,基本上可以說是誤人子弟了,對於一個新人來講基本上屬於對牛彈琴,上來就整這些,學的不好估計嚴重影響學習進度和學習信心,走火入魔,弄得好了沒准也就變成前端程序員了。
3.php基礎語法
基礎語法大概包括下面這些內容:php標記、注釋、變量、數據類型、常量、表達式、流程控制、函數、錯誤處理、session、運算符、命名空間、包括php中提供的常用函數等等。
需要注意的是,在這個階段中很多的新手小白們總是覺得能看的懂別人的代碼,但是自己卻寫不出什么來,其實存在這種情況很正常,不需要過於糾結,基本上在這個階段都是一些基本語法,無非就是多寫多記,自己也可以在網上多找一些小練習來練練手,通過這些小玩意來磨練自己對於基礎知識的掌握程度。
4.面向過程階段
在這一階段,可以學習下MySQL的操作以及PHP如何操作MySQL,自己可以嘗試着寫一些例如記事本、分頁、通過session等等寫個登陸注冊等等簡單的實例,后期再補充個GD庫來寫驗證碼,基本上就可以了。
當掌握的差不多,就可以嘗試着寫一些例如購物商城,論壇貼吧等等項目。
5.php面向對象
在這一階段基本上就要進入到php的核心語法升級階段,從基礎的面向過程開發升級到面向對象開發。在這一階段,你需要弄清楚類、對象、屬性、方法、訪問限制、自動加載、析構函數和構造函數、繼承、范圍解析操作符、靜態、抽象類、對象接口、Trait、匿名類、重載、魔術方法、遍歷對象、Final、對象克隆、比較、類型約束和靜態綁定、對象序列化等等。
在這需要注意的是,目前php還是建議看一些php7的內容,可以在網上找些資料,來幫助自己掌握php7的新內容。
同時,在這一個階段需要理解MVC,還要掌握smarty等等,后期可以在學習一下php一些設計模式用來提高自己的逼格。
6.再次學習下前端的玩意
到了這個階段,基本上就可以花些心思來深入學習下前端的內容,例如JavaScript 深層次的內容,例如玩一玩ES6、ES7,研究一下jQuery的源碼,學習了解下Bootstrap等等基本上就足夠了。
7.php工作進階
到了這個階段,完全可以自己深入學習下php的框架,最常見的ThinkPHP、Laravel等等,通過深入學習框架來體會實際項目的開發。同時最重要的是一定要寫兩個項目練練手,類型無所謂,一定要寫鞏固所學。
8.linux
學到這,可以嘗試着搭建個虛擬機或者自己買個雲服務器玩玩linux,體驗下linux下的開發,可以將之前的項目一點點移植到linux上,同時一定要把linux的環境搭建和基礎操作玩熟。這些都是一個PHPer必備的。
9.為了應付找工作而需要額外掌握的小玩意
學到這,其實已經可以應付工作了,但是目前很多公司在招聘的時候還是要求掌握一些前端的高級玩具,例如Vue,例如React Native等等。同時可以嘗試着了解一些微信開發等等。
10.了解並嘗試並發解決方案
對於一個有逼格的PHPer,怎么能不了解並發呢,一定要學習一些高並發的框架,學一些NoSQL,Swoole技術、keepalived技術等多項不同的技術,了解服務器集群下如何提供效率,全面的了解一下PHP的socket、進程、線程、協程等技術。建議使用Redis、RockMQ寫一個大並發的、多服務器的秒殺出來。
11.神功初成,闖盪江湖
同學,如果你堅持到了這個階段,恭喜你,你已經可以獨闖江湖了。去工作中多多的積累經驗吧。
PS:
在學習php過程中,需要書籍的輔助,在這強烈推薦書籍:
《細說PHP》PHP入門的經典,內容詳實易懂,全面涵蓋了web開發的所需的知識內容。是一本從入門到精通PHP技術的首選教材。
MySQL:
《MySQL必知必會》《高性能MySQL》、《深入淺出MySQL》
Linux:
《Linux系統編程》《鳥哥的 Linux 私房菜》