php執(zhí)行增刪改語(yǔ)句結(jié)果是什么 PHP為什么這么難學(xué)?
PHP為什么這么難學(xué)?盡管其它的一些答主都覺(jué)得這個(gè)題目有點(diǎn)不可思議,但對(duì)于初學(xué)者尤其是網(wǎng)站開(kāi)發(fā)尚未完全入門(mén)的人,還是非常有可能存在這樣的疑問(wèn)的。比如,之前有個(gè)網(wǎng)友想做交互開(kāi)發(fā)的程序,其實(shí)他的要求很簡(jiǎn)單
PHP為什么這么難學(xué)?
盡管其它的一些答主都覺(jué)得這個(gè)題目有點(diǎn)不可思議,但對(duì)于初學(xué)者尤其是網(wǎng)站開(kāi)發(fā)尚未完全入門(mén)的人,還是非常有可能存在這樣的疑問(wèn)的。
比如,之前有個(gè)網(wǎng)友想做交互開(kāi)發(fā)的程序,其實(shí)他的要求很簡(jiǎn)單:就是公眾號(hào)粉絲發(fā)消息,然后根據(jù)不同的消息內(nèi)容自動(dòng)給出回復(fù),這樣的需求使用官方的demo稍微修改一下就能實(shí)現(xiàn)。但他仍然反復(fù)問(wèn)我:我需要買(mǎi)哪些專(zhuān)業(yè)的書(shū)籍?還要學(xué)什么php框架嗎?搞的緊張兮兮的。為什么會(huì)這樣?就是因?yàn)樗€沒(méi)有搞清楚php到底是個(gè)什么東西,網(wǎng)絡(luò)上很多看起來(lái)相當(dāng)高深的文章把他嚇壞了!
還有個(gè)更搞笑的事:一哥們學(xué)html和js相當(dāng)入門(mén)了,有天突然問(wèn)我:php不是通過(guò)echo輸出內(nèi)容的嗎?為什么我頁(yè)面中的php代碼解析不了、全部原樣輸出?大概看了他的代碼之后,沒(méi)發(fā)現(xiàn)什么問(wèn)題。最后才發(fā)現(xiàn),他竟然把php代碼直接寫(xiě)到了后綴名為html的文件中了,這還解析個(gè)鬼?。?/p>
由此可見(jiàn),新手剛學(xué)php時(shí),由于各方面因素所導(dǎo)致的認(rèn)知局限,覺(jué)得php難學(xué)是很正常的。同時(shí)也說(shuō)明,目前市場(chǎng)上的php入門(mén)書(shū)籍或者相關(guān)的文章,接地氣還不夠,因?yàn)橐恍┘?xì)節(jié)說(shuō)明的不到位,會(huì)讓他們走很多的彎路,浪費(fèi)大量無(wú)謂的時(shí)間。好吧,如果你是新手,請(qǐng)好好閱讀一下本篇回答,希望能給你一些幫助。
簡(jiǎn)單認(rèn)識(shí)一下什么是php所謂的php,其實(shí)就是一種服務(wù)器端的編程語(yǔ)言,它既可以獲取客戶(hù)端發(fā)送來(lái)的數(shù)據(jù),也可以將處理好的數(shù)據(jù)輸出并返回到客戶(hù)端。而很多網(wǎng)友之所以把它戲稱(chēng)為“世界上最好的語(yǔ)言”,重要原因之一是它的語(yǔ)法規(guī)則和javascript太像了:會(huì)了js,php的使用也就水到渠成!
例如,我們?cè)赟ublimeText3編輯器新建一個(gè)擴(kuò)展名為php的文件,那么,該文件就會(huì)自動(dòng)按php中的語(yǔ)法規(guī)則來(lái)進(jìn)行編輯處理(如果新建的文件沒(méi)有被識(shí)別為php,也可以在編輯器中手工點(diǎn)擊下圖中的圓圈所示位置,再選擇php即可)。如下圖:
只要你稍微了解一點(diǎn)html標(biāo)簽及css樣式方面的知識(shí),就應(yīng)該能看懂上圖中的字符串是什么意思。
以上代碼中,只有包含在 lt?php 和 ?gt 之間的部分才是php程序,lt?php 和 ?gt其實(shí)就是php代碼的開(kāi)始和結(jié)束標(biāo)記(相當(dāng)于html頁(yè)面文件中的標(biāo)簽)。在php標(biāo)記之外的代碼將被直接作為html的頁(yè)面內(nèi)容進(jìn)行輸出,因?yàn)閜hp程序是可以嵌入到html代碼中執(zhí)行的。
這段代碼其實(shí)就是聲明了3個(gè)字符字符串變量$st、$div和$p,每個(gè)變量的值都是一個(gè)字符串形式的html代碼。如果只聲明一個(gè)普通的字符串變量,可以直接這樣做:
$str我是字符串//這里可以用單引號(hào),也可以用雙引號(hào),具體區(qū)別后面再講。
從純語(yǔ)法的角度來(lái)看,上面的php代碼和js有兩個(gè)明顯的區(qū)別:
第一,php中的變量必須使用美元符號(hào)$,而js使用var關(guān)鍵字;
第二,串聯(lián)字符串用點(diǎn)號(hào)代替符號(hào),符號(hào)在php中只用于算術(shù)運(yùn)算。
除了以上兩點(diǎn),其他規(guī)則基本和js一樣。例如,你不 聲明變量時(shí)不需要指定數(shù)據(jù)類(lèi)型,可以同時(shí)用符號(hào)賦值,語(yǔ)句要以分號(hào)結(jié)束,字符串?dāng)?shù)據(jù)要用單引號(hào)或雙引號(hào)括起來(lái),等等。就連給代碼添加注釋的也和js一模一樣。現(xiàn)在,讓我們 在上面代碼的php標(biāo)簽周?chē)S意輸入一些內(nèi)容:
Ltbgt I php標(biāo)記外的m lt/bgtltbrgtltbrgt。
lt?服務(wù)器端編程語(yǔ)言(Professional Hypertext Preprocessor的縮寫(xiě))
...…php代碼縮寫(xiě)...
?大型旅行車(chē)的
LTA:I ;m也在php標(biāo)簽之外lt/bgt。
然后直接在瀏覽器中運(yùn)行該文件,并通過(guò)控制臺(tái)檢查其代碼,如下所示:
通過(guò)查看代碼可以發(fā)現(xiàn),php文件中的所有代碼最終都會(huì)被解析成頁(yè)面中的body元內(nèi)容元素進(jìn)行輸出,head、html等標(biāo)簽元素也會(huì)自動(dòng)加入。
這說(shuō)明一個(gè)php文件其實(shí)就是一種頁(yè)面,只是可以嵌入php程序代碼。當(dāng)里面沒(méi)有嵌入php代碼時(shí),可以作為普通的頁(yè)面文件使用;當(dāng)php代碼被嵌入后,echo輸出的內(nèi)容將與原來(lái)的html代碼結(jié)合起來(lái)顯示給用戶(hù)。當(dāng)然,在echo之前,php可以進(jìn)行一系列的邏輯運(yùn)算和處理,這些邏輯運(yùn)算的代碼不會(huì)顯示在頁(yè)面中。
如上圖所示,由于通過(guò)php程序輸出的內(nèi)容使用了類(lèi)樣式,最終頁(yè)面顯示效果中的字體為12px;php logo外添加的dom元素沒(méi)有使用這種樣式,字體大小明顯更大。
所以,請(qǐng)不要。;不要把php想得復(fù)雜深?yuàn)W,只把它想成另一種類(lèi)型的頁(yè)面。
面向?qū)ο?、面向過(guò)程和js不一樣。php同時(shí)支持面向?qū)ο蠛兔嫦蜻^(guò)程的編程方法,開(kāi)發(fā)者可以自由選擇其中一種或者混合使用。
什么是面向?qū)ο螅亢?jiǎn)單來(lái)說(shuō),就是把程序中所有可以操作的東西都看成一個(gè)對(duì)象,這樣你就可以用它們的屬性和方法,以事件驅(qū)動(dòng)的對(duì)它進(jìn)行各種操作。這對(duì)于初學(xué)者來(lái)說(shuō)確實(shí)是相當(dāng)難的,要考慮的因素很多,不是短時(shí)間能學(xué)會(huì)的。
因?yàn)槊嫦驅(qū)ο驣t 這有點(diǎn)困難。初學(xué)者可以從 "面向過(guò)程的 ",這正是大多數(shù)php開(kāi)發(fā)人員采用的。因?yàn)榫W(wǎng)頁(yè)解析本身是非常 "程序與法律,在頁(yè)面中嵌入面向流程的處理代碼是一種非常自然的手段,其實(shí)現(xiàn)工具就是大量使用php函數(shù)。php中有很多函數(shù),比如字符串、數(shù)組、值、日期等。用的時(shí)候就按語(yǔ)法格式叫就行了,真的沒(méi)什么技術(shù)含量。
一句話(huà),唐 不要擔(dān)心 "客體與客體or "過(guò)程與結(jié)果他的X. Don 不要先擔(dān)心理論上的東西,你可以自己動(dòng)手,先解決問(wèn)題!這是我給初學(xué)者的建議。
我是《人與自然》的簽約作者。;美國(guó)郵電出版社。歡迎大家關(guān)注我的交流和提高。謝謝大家!
工作4年了,還是只會(huì)“增刪改查”,Java程序員該如何進(jìn)階?
還有一個(gè)適合少數(shù)程序員的選擇,就是做一個(gè)底層的碼農(nóng),做幾年程序員,主要是用來(lái)磨煉自己的思維和脾氣,可以出去做其他的事情。事實(shí)上,你可以 做程序員掙不了多少錢(qián)。雖然與其他工薪族相比,程序員的工資很高,但他們?nèi)匀还ぷ鳌榱艘粋€(gè)月幾千塊錢(qián)的工資,你要花很多時(shí)間,學(xué)習(xí)新的東西,加班加點(diǎn),違背你的初衷。最后,在40歲這個(gè)普遍被企業(yè)拋棄的年紀(jì),轉(zhuǎn)型會(huì)相對(duì)更麻煩。