首頁  >  文章  >  新手到底如何學php?

新手到底如何學php?

PHP中文网
PHP中文网原創
2017-10-27 10:03:508406瀏覽

從自己問別人怎麼學PHP開始,到後來不少人又來問怎麼學PHP,不管是新手,還是老鳥,似乎總是感覺摸不出一條清晰的脈絡來,不過,既然學會了PHP,那麼我走的這條路或多或少的有一定藉鏡性。

新手到底如何學php?    

################################################################### #

PHP的背景恐怕就不用贅言了,我相信大家選擇一種語言,並不是看它的背景和悠久歷史,更重要的是看它的實用性,華而不實的語言哪怕是再輝煌的歷史,也畢將步向沒落,可喜的是PHP經受住了考驗,也因此,它確實是值得學習的語言。
    一直是聽從別人的經驗長大的,也因此在前輩們的經驗裡讓少走了許多的彎路,更快的步入了正規,在此向那些我至盡不知道其名字的前輩們道聲謝謝,在的眼裡, 幫助不分大小,只要是幫助,總會讓的心裡暖融融的,我想,前輩們幫助我,並不是為了得到我的一句謝謝,更多的是出於一種責任感和對的期望,所以我想,只有學好PHP,才能對得起前輩們的汗水。
    如我所說的,也終於感覺到了一種責任感,不知道自己的經驗到底能幫助新手多少,但是明白,現在到了履行責任的時候了,我有必要把自己的經驗告訴給所有希望學好PHP的人,就這樣才能讓中國的PHP不斷的進步,不斷的發展,在世界上佔有一席之地。
    學習PHP的這段期間,感覺國內的PHP環境越來越成熟,規範也在逐漸的健全,PHPCHINA的成立,標誌著與官方直接掛鉤的PHP機構在中國正式落戶了,在此獻上遲到的掌聲!
    好的,切入正題:
    我想在講述自己的學習方式前,對那些期望能從我的文章中獲得有用信息的人說一句心裡話:
    的文章不會對您的學習起到實質的作用,您能否成功,還得靠自己的,堅持,堅持,再堅持,就是步入成功的不二法門。
    我先把自己學習PHP的過程做概括:
        (1)熟悉HTML/CSS/JS等網頁基本元素,完成階段可自行製作完整的網頁,對元素屬性達到熟悉度
        (2)瞭解動態語言的概念,操作機制,熟悉PHP語法
        (3)學習如何將PHP與HTML結合完成簡單動態頁面
   #MYSQL,開始設計資料庫程式        (5)不斷鞏固,觸摸大部分PHP
常用函數,並可理解OOP,MYSQL最佳化,以及範本        (6)完成一個功能齊全的動態站點
    我的這套線可能跟許多學習PHP的愛好者不謀而合,這也算是一個循序漸進的學習過程,不過新手不要看到上面的概括就以為學習蠻簡單的,在此不得不對您稍微潑一下冷水,任何東西其實都不簡單,即使是小吃部的燒餅也不是一下子就會做成的。
    先解釋一下我的學習想法。
    首先,理解網站這個概念之後不難看出,任何網站都是由網頁組成的,也就是說想完成網站,必須先學會做網頁,因此必須要掌握了HTML,才能為今後製作網站打下基礎。
    在學習HTML中我想邊學邊做是最有效的方式,當然這一方式對於學習PHP同樣是最有效的。
    HTML中的任何元素都要親自實踐,只有明白了什麼元素會起到什麼效果之後,你才會記憶深刻,而一味的啃書,絕對是不行的,我想大部分新手之所以覺得概念難學,大部分是一個字“懶”,懶是阻止進步的最大敵人,所以克服掉懶的習慣,才能更快的學好一樣東西。
    也許您在學習PHP的時候只想盡快的開發一個網站,也就會想我做網站,幹嘛要學什麼網頁這些小兒科?不難看出,眼高手低的新手不在少數,這種想法無疑於建造空中樓閣,你不建地基,何來的房頂呢?
    OK,掌握靜態網頁的製作技術是學習開發網站的先決條件,這一點就講到這裡,因為這篇文章不是教程文章,也就不對技術進行深入的刨析了。
    我假設你目前已經可以完成一個靜態頁面了,當然,做的好看難看是另外一說,的第一個網頁也沒好看到哪去,但是“孩子”再醜,咱們做“爹媽」的也不能嫌棄不是?這畢竟是咱的成果。
    那麼咱們就開始學習動態語言的概念吧,剛一接觸動態語言,可能很多人都會蒙了,怎麼這亂七八糟的東西,在網頁裡顯示的時候卻是另外一碼事?其實這並不算亂 七八糟,你寫的HTML程式碼不也一樣是一堆堆的字元嗎?畢竟,程式碼並不是作為直接輸出的,而是經過處理的,說穿了,HTML是經過HTML解析器,而PHP當然也就通過PHP解析器了,跟學習HTML一樣的道理,想讓任何的解析器要完成操作,就必須使用它們專用的語法結構,所以PHP長相奇怪也就不足為奇了。
    對PHP的理解是新手最難跨過的一道門檻,不過你應該感到幸運的是PHP已經最大極限的為了新手而努力了,如果你學過其他的語言,也許會覺得PHP的確相當的簡單,但是如果你之前什麼都沒學過,那麼阿彌陀佛,硬著頭皮琢磨吧。
    書過三遍自然熟,這個簡單的道理告訴我們,即使你理解不了PHP,但是也必須先跟它混個臉熟,看,一遍遍的看,看的同時一邊琢磨,一邊按照它所教的打代碼,即使你搞不清楚那些代碼到底是幹嘛的,但是起碼你應該找找感覺。
    在一段掙扎之​​後,聰明的你,顯然已經逐漸的開悟了,慢慢的理解了程式設計的概念,那麼恭喜你,你已經邁出了成功的第一步。
    搞清楚HTML和PHP的概念,那麼PHP和HTML混合程式應該不成問題,在這期間,你完全可以讓PHP給你算算一加一等於幾,然後在瀏覽器輸出,不要覺得幼稚,這的確是跟阿波羅登月一樣,你打的是一小段程式碼,但是對於你的程式設計之路,可是邁出了一大步啊!興奮吧?但不得不再給你潑點冷水,您還是菜鳥一 個。
    高興一段時間就必須繼續努力了,接下來就是學習資料庫了,MYSQL可算是PHP的黃金搭檔了,不過,雖然話是這麼說,你也可能恨不得把MYSQL給生吞活剝了,因為這一行一列的東東簡直讓自己頭暈目眩。
    頭暈歸頭暈,目眩歸目眩,你不可能吃飯的時候咬了自己一下舌頭就從此不吃飯了不是?放下畏懼,繼續努力,咱們是來征服它的,而不是被它征服的,振奮起來吧同志。
    在一番搏鬥之後,你終於理解了資料庫的概念,而且讓你興奮不已的是你終於可以透過PHP來連接資料庫了,這期間你是怎麼學會的,我們不去考證了,但是事實證明,你已經可以了。
    學會了PHP和資料庫的你,無疑是左手拿著MOTOLOLA右手拿著NOKIA,要多瀟灑,有多瀟灑,哈哈,終於學會了,但是可能這個時候,又會有人不經意的拍拍肩膀對你說:哥們,別高興的太早,你還是菜鳥,離學會還差著一大截呢!
    等到你發奮努力的學會了用PHP成功的插入,刪除,更新數據的時候,顯然,你已經距離成功指日可待了。
    這時候的你也許是這種狀態:
        你會HTML嗎?會,我可以編好幾個大表格排板的網頁啦!
        你會PHP嗎?會,我會把一加一的運算寫在函數裡,然後呼叫囉!
        會MYSQL嗎?會,我會把我的資訊在資料庫裡插入刪除啦
    那,接下來你該怎麼做呢?我覺得,小試試身手,大概是沒問題了,那就交給你個任務,做個留言本吧,這和HELLO WORLD有一比啊! ^_^,同是新手面臨的第一道關。
    花了一段時間,你終於學會把表單的資料插入資料庫,然後顯示出來了,應該說一個程式的雛形已經誕生了。
    但是,你可能瞅瞅東,看看西,人家這個編論壇,那個CMS,還有那啥CRM,我啥時候寫一個呢?
    不要急,可以說你的馬步已經扎的差不多了,接下來就要開始練把勢的時候了,如果有條件的話,用筆或者打印一個簡易的PHP手冊在身上,時不時的摸出來看看,記得,去WC也不能放過(^2^)。
    再有條件的話,買本書看看吧,《PHP+MYSQL WEB開發(第三版)》號稱聖經級,(也許是個不錯的選擇(聲明:作者沒給我啥好處費,我也不是書托,隔著大老遠,我連他老兄的面都沒見過的說-_-)
    鞏固了自己的知識,熟悉了PHP和MYSQL開發的要領之後,再回頭看你寫的那個留言本,你也許會懷疑那真的是你寫的嗎?當然,如果屋裡還有鬼的話,也許是它寫的-_-
    這個時候,你的留言本應該加入註冊以及分頁功能了,而如果你更強的話,UI (使用者介面)也可以加強,完成之後,感覺是不是特有成就感?不管怎麼樣,咱好歹 是寫了一個動態網站程式了,放在自己的網站上耍耍吧,讓好朋友來看看,嘿,看咱寫的多棒,然後再在網路上宣傳一下。
    幾天之後你再打開留言本,哎?哇,一下彈出N多頁面!很明顯,你的留言本並沒有做好安全防範,被人用JS代碼小小的耍了一下,我很同情你這個時候的感受,但是沒有別的辦法了,繼續努力吧!
    你發奮努力,熟悉了安全方面的問題,然後又設計了一些程序,感覺還不錯。
    那麼接下來,這就算學會啦? NO,NO,NO,還早呢,你至盡還沒碰過OOP之類的吧?模板呢?
    恩,學!加緊學呀學,學會了這些之後,你又學會了生成靜態網頁,現在你應該接觸一下XML了,恩,XML也了解了,那麼AJAX你也得接觸接觸吧? AJAX完了….然後…
    總而言之,你絕對不會發現你全部都學會了,一些真正的強人總會搞出新玩意來丟給你,你不學就落後了,也印證了前人的經驗,果然是學無止境啊!
    我想通過我的一番YY,你也應該大致熟悉了一些學習過程,也許我的過程和你的有些出路,但是不管怎麼樣是殊途同歸,我寫這麼多,也只是給大家一個借鑒的機會,至於好與不好,不敢打包票^0^
    看完之後你發現,羅嗦這麼多,對我一點用處沒有啊,我知道該怎麼學,但是我想如何才能更快的學,一週速成,啊不,24小時速成那種,你有沒?
    我….我沒有,但是2分鐘內把你扁進醫院裡,我倒是有把握-_-
    學東西,永遠不要妄想有速成這一說,告訴你了一個方式,但缺少努力這一環節,那也是白搭。
但是有一點我可以給你保證的就是,你學會了PHP,那麼學其他的語言,肯定速成,反過來也一樣,如果你之前學過其他的語言,那麼學PHP肯定快。
    不過文法好學,但是怎麼用文法來實現每個人都有每個人的方式,幾乎是各有千秋。然而藉鏡別人成功的程式碼,絕對是有益無害,因此,多看那些經過千錘百煉凝出來的經典程式碼,是進階的最好方法。
    講了這麼多,無非是想說:學習PHP不只要掌握方法,更多的是付出汗水,我不希望看到中途放棄的人,相信自己,相信自己的選擇,更要相信自己的能力,如果自己想放棄,暴力一點的話,就自己抽自己一個嘴巴,然後大吼:別人可以,我為什麼就不行? (是不是有點閻羅教練的味道,的確是電影看多了,抽嘴巴是會痛的,各位其實明白這個道理了就行了)
    另外要叮囑各位的是,抵禦誘惑,ASP/PHP/JSP /.NET的對比也許會讓你無所適從,你也許學了一半PHP,又開始打C#的主意,或者有人說JAVA很強,這個時候的你絕對不能動搖,哪怕你真想學,也得學會了PHP。然後再學,見異思遷是最不可取的,狗熊掰玉米就是這個道理,如果經常中途放棄,只能是一無所獲,還浪費了N多的時間和經歷,得不償失,最重要的是,你會被別人瞧不起,沒有人會喜歡和見異思遷的人交朋友,因為這種人太不安分,太不可靠,因此,你必須要強迫自己完成自己的目標,哪怕可能會很難受,也得堅持,毅力就是這麼鍛煉出來的。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn