- 相關(guān)推薦
零基礎(chǔ)學(xué)習(xí)PHP編程的學(xué)習(xí)路線及建議
php工程師需要掌握的知識(shí)很多,但是對(duì)于初級(jí)工程師來(lái)講相對(duì)少一些。下面小編為大家介紹零基礎(chǔ)學(xué)習(xí)PHP編程的學(xué)習(xí)路線及建議吧!
1、PHP的學(xué)習(xí)路線
① 任何網(wǎng)站全都是由網(wǎng)頁(yè)組成的,也就是說(shuō)想完成一個(gè)網(wǎng)站,必須先學(xué)會(huì)做網(wǎng)頁(yè),掌握靜態(tài)網(wǎng)頁(yè)的制作技術(shù)是學(xué)習(xí)開(kāi)發(fā)網(wǎng)站的先決條件。 因此我們要學(xué)習(xí)HTML,為今后制作網(wǎng)站打下基礎(chǔ)。 學(xué)習(xí)HTML應(yīng)該邊學(xué)邊做,HTML中的任何元素都要親自實(shí)踐,只有明白了什么元素會(huì)起到什么效果之后,才能深刻記憶,一味的看書(shū)是不行的!
假設(shè)你已經(jīng)可以完成一個(gè)靜態(tài)頁(yè)面了,那么就該開(kāi)始了解動(dòng)態(tài)語(yǔ)言,剛一接觸動(dòng)態(tài)語(yǔ)言,可能很多人都會(huì)擁有很多不解,代碼不是作為直接輸出的,而是要經(jīng)過(guò)處理的,HTML是經(jīng)過(guò)HTML解析器,而PHP也要通過(guò)PHP解析器,跟學(xué)習(xí)HTML一樣的道理,想讓任何的解析器工作,就必須使用它專(zhuān)用的語(yǔ)法結(jié)構(gòu)
學(xué)習(xí)PHP,你應(yīng)該感到幸運(yùn),因?yàn)槿绻銓W(xué)過(guò)其他語(yǔ)言,你就會(huì)發(fā)現(xiàn)PHP還是相對(duì)簡(jiǎn)單的,這一階段,你要搞清楚HTML和PHP的概念,你現(xiàn)在完全可以讓PHP給你算算一加一等于幾,然后在瀏覽器輸出。 不要覺(jué)得幼稚,這雖然是很小的一段代碼,但是對(duì)于你的編程之路,可是邁出了一大步。 不過(guò)現(xiàn)在,你還是一個(gè)菜鳥(niǎo)。
② 接下來(lái)就要學(xué)習(xí)數(shù)據(jù)庫(kù)了,MySQL可以說(shuō)是PHP的黃金搭檔,我們要征服這個(gè)數(shù)據(jù)庫(kù),在你理解了數(shù)據(jù)庫(kù)的概念之后,就要嘗試通過(guò)PHP來(lái)連接數(shù)據(jù)庫(kù),進(jìn)而會(huì)用PHP成功的插入,刪除和更新數(shù)據(jù)。
這個(gè)時(shí)候,你可能會(huì)處于這種狀態(tài):你會(huì)HTML嗎?會(huì),我能編好幾個(gè)表格排板的網(wǎng)頁(yè)呢!你會(huì)PHP嗎?會(huì),我會(huì)把一加一的運(yùn)算寫(xiě)在函數(shù)里,然后調(diào)用!你會(huì)MySQL嗎?會(huì),我可以把數(shù)據(jù)庫(kù)里的數(shù)據(jù)插入刪除啦!
③ 那接下來(lái)該做什么呢?嘗試著做個(gè)小的留言本吧,這同樣是新手面臨的一道關(guān)卡。 花了一段時(shí)間,你終于學(xué)會(huì)把表單的數(shù)據(jù)插入數(shù)據(jù)庫(kù),然后顯示出來(lái)了,應(yīng)該說(shuō)一個(gè)程序的雛形已經(jīng)誕生了。 但是,你可能會(huì)看人家這個(gè)編論壇,那個(gè)開(kāi)發(fā)CMS,我什么時(shí)候可以寫(xiě)一個(gè)呢?不要急,再鞏固一下知識(shí),熟悉了PHP和MySQL開(kāi)發(fā)的要領(lǐng)后,再回頭看你寫(xiě)的那個(gè)留言本,你也許會(huì)懷疑那真的是你寫(xiě)的嗎?這個(gè)時(shí)候,你可以完善一下你寫(xiě)的留言本。 留言本應(yīng)該加入注冊(cè)以及分頁(yè)的功能,可以的話,UI也可以加強(qiáng)。
④ 這就算學(xué)會(huì)了嗎?NO,NO,NO,還早呢,你到現(xiàn)在還沒(méi)碰過(guò)OOP呢吧?那模板和框架呢?還要繼續(xù)學(xué)習(xí)呀!PHP框架提供了一個(gè)用以構(gòu)建web應(yīng)用的基本框架,從而簡(jiǎn)化了用PHP編寫(xiě)web應(yīng)用程序的流程。 可以節(jié)省開(kāi)發(fā)時(shí)間、、有助于建立更穩(wěn)定的應(yīng)用。 所以說(shuō),PHP框架是一個(gè)可以用來(lái)節(jié)省時(shí)間并強(qiáng)化自己代碼的工具。 當(dāng)你第一次選擇PHP框架時(shí),建議多嘗試幾個(gè),每個(gè)框架都有自己的長(zhǎng)處和短處,例如Zend框架由于多樣的功能、、并且有一個(gè)廣泛的支持系統(tǒng),流行了很長(zhǎng)時(shí)間。 而CakePHP是一個(gè)晚于Zend的PHP框架,相應(yīng)的支持系統(tǒng)也比較少,但是更為方便和易于使用。
⑤ 了解了面向?qū)ο蠛涂蚣芎螅銘?yīng)該接觸一下XML了,總而言之,你絕對(duì)不會(huì)發(fā)現(xiàn)你全部都學(xué)會(huì)了,學(xué)無(wú)止境!學(xué)東西,永遠(yuǎn)不要妄想有速成這一說(shuō),技巧再多,但是缺少努力,那也是白搭。 有一點(diǎn)可以保證,就是你學(xué)會(huì)了PHP,那么再學(xué)其它語(yǔ)言,肯定速成,反過(guò)來(lái)也一樣,如果你之前學(xué)過(guò)其它的語(yǔ)言,那么學(xué)PHP肯定快。
多借鑒別人成功的代碼,絕對(duì)是有益無(wú)害,所以要多看那些經(jīng)過(guò)千錘百煉凝出來(lái)的經(jīng)典代碼,是進(jìn)步的最好方法。 另外,要強(qiáng)調(diào)的是,學(xué)習(xí)一項(xiàng)技術(shù)過(guò)程中可能會(huì)遇到困難,可能會(huì)迷茫,你也許學(xué)了一半的PHP,又開(kāi)始打C#的主意,或者有人說(shuō)Java很好,這個(gè)時(shí)候你絕對(duì)不能動(dòng)搖,要堅(jiān)持到底,徹底學(xué)會(huì)。
2、PHP性能優(yōu)化的10個(gè)小建議
1) foreach效率更高,盡量用foreach代替while和for循環(huán);
2) 循環(huán)內(nèi)部不要聲明變量,尤其是對(duì)象這樣的變量;
3) 在多重嵌套循環(huán)中,如有可能,應(yīng)當(dāng)將最長(zhǎng)的循環(huán)放在內(nèi)層,最短循環(huán)放在外層,從而減少cpu跨循環(huán)層的次數(shù),優(yōu)化程序性能;
4) 用單引號(hào)替代雙引號(hào)引用字符串以實(shí)現(xiàn)PHP性能優(yōu)化;
5) 用i+=1代替i=i+1。 符合c/c++的習(xí)慣,效率還高;
6) 優(yōu)化Select SQL語(yǔ)句,在可能的情況下盡量少的進(jìn)行Insert、Update操作,達(dá)到PHP性能優(yōu)化的目的;
7) 盡量的少進(jìn)行文件操作,雖然PHP的文件操作效率也不低的;
8) 盡可能的使用PHP內(nèi)部函數(shù);
9) 在可以用PHP內(nèi)部字符串操作函數(shù)的情況下,不要用正則表達(dá)式;
10) feof、fgets、fopen、在可以用file_get_contents替代file、系列方法的情況下,盡量用 file_get_contents,因?yàn)樗男矢叩枚唷?但是要注意file_get_contents在打開(kāi)一個(gè)URL文件時(shí)候的PHP版本問(wèn)題;
3、給PHP初學(xué)者的學(xué)習(xí)建議
如何學(xué)好PHP呢?達(dá)妹分享幾點(diǎn)PHP學(xué)習(xí)經(jīng)驗(yàn),希望對(duì)大家有所幫助。編程是一條漫長(zhǎng)的路,希望大家都能在這條路上尋找到自己想要的明天。
(1)搜集一切學(xué)習(xí)的資源
現(xiàn)在的網(wǎng)絡(luò)發(fā)達(dá),想要了解一門(mén)知識(shí)的基本概況,隨意搜索一下就能找到答案。既然決定學(xué)習(xí)PHP,就去一些大型的網(wǎng)站,多關(guān)注PHP信息,先從最基本的學(xué)起。這個(gè)過(guò)程可能會(huì)比較枯燥,也比較難,很多時(shí)候似是而非,學(xué)不會(huì),但沒(méi)關(guān)系,重要的是你接觸它,愛(ài)上它。
也可以淘一些書(shū)籍來(lái)看,一邊看、一邊理解、一邊做筆記。把基礎(chǔ)知識(shí)鞏固好!如果不理解,可以多看幾遍,或者說(shuō),直接在電腦上敲幾遍,運(yùn)行效果看一下。實(shí)在不懂吧!再去網(wǎng)上的技術(shù)論壇或者社區(qū)找高手幫忙,如果還是覺(jué)得有難度,最好能報(bào)個(gè)培訓(xùn)班,畢竟自學(xué)是件耗費(fèi)精力的事,也不是每個(gè)人都能堅(jiān)持下來(lái)的。
(2)堅(jiān)持每天寫(xiě)代碼
一個(gè)優(yōu)秀的開(kāi)發(fā)工程師必定是寫(xiě)過(guò)上萬(wàn)行的代碼。那么做為新手的你,肯定是要寫(xiě)代碼的。不過(guò),代碼肯定是先易后難的。首先從簡(jiǎn)單的數(shù)據(jù)庫(kù)增刪改查開(kāi)始,之后再延伸到復(fù)雜的。如果遇到問(wèn)題,可以查手冊(cè),或者上網(wǎng)找解決的辦法,或者去技術(shù)論壇找高手幫忙。要知道實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)。
一定要持之以恒的堅(jiān)持寫(xiě)代碼,寫(xiě)不下去的時(shí)候,看看別人怎么寫(xiě),回頭繼續(xù)堅(jiān)持。只要熬過(guò)了最初的枯燥,一定會(huì)有所獲。
(3)積累經(jīng)驗(yàn),學(xué)會(huì)借鑒
其實(shí),PHP有一個(gè)非常好的地方,就是網(wǎng)上有很多開(kāi)源的cms源代碼。推薦國(guó)外的wordpress和國(guó)內(nèi)的dedecms通過(guò)進(jìn)行二次開(kāi)發(fā)可以做一個(gè)自己的網(wǎng)站。增加自己的實(shí)操經(jīng)驗(yàn),對(duì)面試很有幫助。
現(xiàn)在大部分的公司開(kāi)發(fā)網(wǎng)站,都是使用框架開(kāi)發(fā)的。這樣子效率高,而且成本比較低。現(xiàn)在目前國(guó)內(nèi)最流行的框架是ThinkPHP框架,國(guó)外最流行的Laravel、Yii、CI等。這些都是目前企業(yè)比較常用的,能夠精通一個(gè)框架,成為一名高富帥和白富美是沒(méi)有什么問(wèn)題的了,當(dāng)然技術(shù)大牛不會(huì)只停留在一個(gè)框架上的學(xué)習(xí)上的。
【零基礎(chǔ)學(xué)習(xí)PHP編程的學(xué)習(xí)路線及建議】相關(guān)文章:
零基礎(chǔ)學(xué)習(xí)PHP應(yīng)該怎么學(xué)10-20
學(xué)習(xí)php編程語(yǔ)言 php常用英語(yǔ)單詞10-03
php學(xué)習(xí)筆記:基礎(chǔ)知識(shí)08-31
php基礎(chǔ)知識(shí)學(xué)習(xí)筆記08-15
從零開(kāi)始學(xué)習(xí)PHP的總流程09-14
零基礎(chǔ)如何學(xué)習(xí)C語(yǔ)言07-10
LINUX學(xué)習(xí)路線指導(dǎo)07-12
java學(xué)習(xí)路線分享10-28