卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

PHP為什么這么難學?

網(wǎng)友解答: PHP同JAVA,Python,c相比,應該是相對簡單的一門語言,而針對自學者來說,那就需要一個可行的計劃,和足夠的耐心來學習,如果全身心的投入編程中,四個半月就可以走馬上任

網(wǎng)友解答:

PHP同JAVA,Python,c相比,應該是相對簡單的一門語言,而針對自學者來說,那就需要一個可行的計劃,和足夠的耐心來學習,如果全身心的投入編程中,四個半月就可以走馬上任了,當然自己也得付出足夠的毅力與時間去實踐。

最好是當天學習到的知識當天消化,多敲代碼,多去嘗試著開發(fā)各種商城,系統(tǒng)等等。

下面我就想分享一下我剛開始學習PHP的時候,老師給我擬的一份四個半月學會PHP的學習大綱。總共分四個階段。

第一階段

html+css(兩個星期(10天課)周六周天完成京東商城首頁和注冊頁面)

第二階段

1.php基礎階段(10天課程,從php的語法開始學習,到循環(huán)語句,條件語句...基本學習沒門語言開始學習的時候都要學習的基礎)

2.mysqli擴展庫對數(shù)據(jù)庫的操作(3天)

3.mysql數(shù)據(jù)庫學習(創(chuàng)建表,增刪改查,數(shù)據(jù)庫和數(shù)據(jù)庫表的導入導出)(3天)

4.項目新聞列表分頁(利用以上學習,使用a標簽的get請求方式實現(xiàn)分頁)(2天)

php進階階段

1)GD庫(制作驗證碼)

2)文件上傳,實現(xiàn)多文件和單文件的上傳(2天)

3)正則表達式(1天)

4)文件目錄(4天)

5)利用學的文件目錄知識(新聞項目——實現(xiàn)沒增加一條新聞就存入數(shù)據(jù)庫的同時生成靜態(tài)頁面,存到文件中)(2天)

6)PDO類對數(shù)據(jù)庫的操作(3天)

7)設計模式(3天)

8)面向對象(類,接口,繼承,封裝等)(4天)

9)封裝文件上傳類,mysql類(增刪改查),驗證碼類(3天 ,一天一個)

10)session(利用session實現(xiàn)用戶登錄狀態(tài)和非登錄狀態(tài))(1天)

第三階段

1.js語法基礎(3天)

2.jq語法基礎(3天)——寫一個輪播圖和一個定時器

3.ajax和json基礎(3天)

4.ajax和json結合實現(xiàn)登錄效果,頁面不刷新請求服務器效果(2天)

5.redis基礎(2天)

6.mongodb

7.memcached

第四階段

tp框架一個商城(15天)

laraval框架一個博客(15天)(其中的一小點功能應用memcached緩存實現(xiàn)點贊)

微信接口的調用(微信公眾號中用代碼調用接口實現(xiàn)獲取用戶信息,調用天氣接口,獲取每天的天氣)(5天)

小程序基礎(10天)

自學的話要了解到博客里面有什么功能模塊(并通過所學的知識實現(xiàn)他)

網(wǎng)友解答:

盡管其它的一些答主都覺得這個題目有點不可思議,但對于初學者尤其是網(wǎng)站開發(fā)尚未完全入門的人,還是非常有可能存在這樣的疑問的。

比如,之前有個網(wǎng)友想做微信交互開發(fā)的程序,其實他的要求很簡單:就是公眾號粉絲發(fā)消息,然后根據(jù)不同的消息內(nèi)容自動給出回復,這樣的需求使用官方的demo稍微修改一下就能實現(xiàn)。但他仍然反復問我:我需要買哪些專業(yè)的書籍?還要學什么php框架嗎?搞的緊張兮兮的。為什么會這樣?就是因為他還沒有搞清楚php到底是個什么東西,網(wǎng)絡上很多看起來相當高深的文章把他嚇壞了!

還有個更搞笑的事:一哥們學html和js相當入門了,有天突然問我:php不是通過echo輸出內(nèi)容的嗎?為什么我頁面中的php代碼解析不了、全部原樣輸出?大概看了他的代碼之后,沒發(fā)現(xiàn)什么問題。最后才發(fā)現(xiàn),他竟然把php代碼直接寫到了后綴名為html的文件中了,這還解析個鬼?。?/p>

由此可見,新手剛學php時,由于各方面因素所導致的認知局限,覺得php難學是很正常的。同時也說明,目前市場上的php入門書籍或者相關的文章,接地氣還不夠,因為一些細節(jié)說明的不到位,會讓他們走很多的彎路,浪費大量無謂的時間。好吧,如果你是新手,請好好閱讀一下本篇回答,希望能給你一些幫助。

簡單認識一下什么是php

所謂的php,其實就是一種服務器端的編程語言,它既可以獲取客戶端發(fā)送來的數(shù)據(jù),也可以將處理好的數(shù)據(jù)輸出并返回到客戶端。而很多網(wǎng)友之所以把它戲稱為“世界上最好的語言”,重要原因之一是它的語法規(guī)則和javascript太像了:會了js,php的使用也就水到渠成!

例如,我們在SublimeText3編輯器新建一個擴展名為php的文件,那么,該文件就會自動按php中的語法規(guī)則來進行編輯處理(如果新建的文件沒有被識別為php,也可以在編輯器中手工點擊下圖中的圓圈所示位置,再選擇php即可)。如下圖:

只要你稍微了解一點html標簽及css樣式方面的知識,就應該能看懂上圖中的字符串是什么意思。

以上代碼中,只有包含在 <?php 和 ? 之間的部分才是php程序,<?php 和 ?其實就是php代碼的開始和結束標記(相當于html頁面文件中的標簽)。在php標記之外的代碼將被直接作為html的頁面內(nèi)容進行輸出,因為php程序是可以嵌入到html代碼中執(zhí)行的。

這段代碼其實就是聲明了3個字符串變量$st、$div和$p,每個變量的值都是字符串形式的html代碼。如果僅聲明一個普通的字符串變量,可以直接這樣:

$str = '我是字符串'; //這里用單引號或雙引號都可以,具體區(qū)別稍后再說

如果單純從語法上看,上述php代碼和js相比有兩處是明顯不同的:

第一,php中的變量必須使用美元符號$,而js是使用var關鍵字;

第二,拼接字符串使用圓點符號,不能用 + 號,+ 號在php中僅用于算術運算。

除了上述兩點外,其它規(guī)則與js都基本相同。比如,聲明變量時不用指定數(shù)據(jù)類型、聲明的同時可以=號賦值、語句要用分號結束、字符串數(shù)據(jù)需要用單引號或雙引號括起來等等,就連給代碼添加注釋的方式也是和js完全相同的?,F(xiàn)在,我們在上述代碼的php標記外圍再隨便輸入一些內(nèi)容:

<b我是在php標記外面的</b<br<br

<?php

…php代碼略…

?

<a 我也是在php標記外面的</b

然后在瀏覽器中直接運行這個test.php文件,通過控制臺查看其代碼如下:

通過查看代碼就可發(fā)現(xiàn),php文件中的所有代碼最終都會解析為頁面中的body元內(nèi)容素進行輸出,同時會自動加上head、html等標簽元素。

這就說明:php類型的文件其實就是一種頁面,只不過在它里面可以嵌入php程序代碼而已。當它里面沒有嵌入php代碼時,就可以當做普通的頁面文件來使用;當嵌入php代碼時,其通過echo輸出的內(nèi)容將與原有的html代碼融合在一起展示給用戶。當然,在echo之前,php可以先進行一系列的邏輯運算和處理,這些邏輯運算的代碼是不會展示在頁面中的。

如上圖所示,由于通過php程序輸出的內(nèi)容使用了class樣式,因此,最終的頁面展示效果中其字體為12px;而php標識外面添加的dom元素沒有使用此樣式,其字號明顯就要大一些。

所以,請不要把php想的多么復雜和高深,姑且把它當成另外一種類型的頁面就可以了。

面向對象與面向過程

和js不太一樣的是,php同時支持面向對象和面向過程的編程方式,開發(fā)者可以在面向對象和面向過程二者中自由選擇其一或是混合使用。

什么是面向對象?簡單的說,就是把程序中所有可操作的東西都看成是一個對象,這樣就可以使用它們的屬性和方法并采用事件驅動的方式來對其進行各種操作。這個對初學者來說確實有相當?shù)碾y度,需要考慮的因素比較多,不是一時半會就能學的會的。

既然面向對象有點難,新手完全可以從“面向過程”快速入門,而這也正是絕大多數(shù)php開發(fā)者所采用的方式。由于Web頁面解析本身就是很“過程化”的,而在頁面中嵌入面向過程的處理代碼是非常自然的手段,其實現(xiàn)工具就是大量的使用php函數(shù)。php中的函數(shù)非常多,字符串、數(shù)組、數(shù)值、日期等等,使用時按它們的語法格式調用就行了,真的沒啥技術含量。

總之一句話,別管他X的什么“對象”還是“過程”,理論上的東西先不管,自己能夠干起來、先解決問題再說!這就是我給初學者的建議。

我是人民郵電出版社簽約作者,歡迎大家關注我一起交流提高,謝謝!

標簽: