2023-11-24 分類(lèi): 網(wǎng)站建設(shè)
"
本文主要內(nèi)容是解讀pHp的主要新特性8.0
"
pHp8 新特性
1. 聯(lián)合類(lèi)型
2. 匹配表達(dá)式
3. 空安全運(yùn)算符
4. 構(gòu)造函數(shù)屬性提升
5. 注釋
6. 命名參數(shù)
前言
pHp8 于 2020 年 11 月 26 日正式發(fā)布,又一個(gè)里程碑已經(jīng)到來(lái)。
根據(jù)官網(wǎng)信息,已經(jīng)發(fā)布到8.0.2版本php 開(kāi)發(fā)特點(diǎn),但是很多項(xiàng)目還在5.6版本,老的不會(huì)去新的,是時(shí)候升級(jí)了。!
接下來(lái)卡卡會(huì)分析pHp8.0的新特性。
一、小皮膚面板下載pHp8
由于您想學(xué)習(xí)新功能,因此您必須先下載它們。
卡卡一直使用本地環(huán)境,目前pHp版本只支持7.4,。
打開(kāi)pHp官網(wǎng)地址,選擇下載。
下載方式
然后點(diǎn)擊圈出的下載
pHp源代碼下載
下載的源碼可以直接放在面板的這個(gè)目錄下
然后給文件夾起個(gè)名字,卡卡是按照目錄結(jié)構(gòu)寫(xiě)的
pHp目錄結(jié)構(gòu)
然后跳轉(zhuǎn)到面板的pHp環(huán)境,設(shè)置為pHp8環(huán)境。
設(shè)置 pHp 環(huán)境
訪(fǎng)問(wèn)它!
pHp8.0 環(huán)境配置
二、部分下載pHp8會(huì)出現(xiàn)502解決
如果你已經(jīng)下載了pHp8,按照卡卡流程,但是訪(fǎng)問(wèn)時(shí)返回502。
那不用擔(dān)心,這只是一個(gè)小問(wèn)題,如果你發(fā)現(xiàn) pHp 無(wú)法成功運(yùn)行。
使用cmd進(jìn)入pHp8目錄,執(zhí)行該命令。如果出現(xiàn)以下情況seo優(yōu)化,說(shuō)明卡卡可以解決這個(gè)問(wèn)題。如果沒(méi)有,百度將單獨(dú)使用!
我收到以下錯(cuò)誤,因?yàn)?.dll 與 pHp 版本不兼容
解決這個(gè)問(wèn)題也很簡(jiǎn)單??ㄒ呀?jīng)下載了軟件,點(diǎn)擊直接下載。
下載后直接打開(kāi)安裝,然后重啟電腦,一切正常。
如果不使用卡卡提供的安裝包,也可以直接訪(fǎng)問(wèn)官網(wǎng)下載。
進(jìn)入官網(wǎng)后,拉到最下面還有其他工具和框架,點(diǎn)擊卡卡選擇的下載。
下載軟件
三、功能介紹
在版本的更新迭代中會(huì)有新的特性出現(xiàn),一些舊的特性也會(huì)被丟棄。
接下來(lái)說(shuō)說(shuō)pHp8.0帶來(lái)了哪些新特性!
1. 聯(lián)合類(lèi)型
關(guān)于類(lèi)型的特性seo優(yōu)化,其實(shí)pHp7中實(shí)現(xiàn)的,只不過(guò)是注解的形式。
現(xiàn)在來(lái)看看兩者的區(qū)別。下圖來(lái)自pHp官網(wǎng)。
此圖來(lái)自pHp官網(wǎng)
pHp8中設(shè)置參數(shù)類(lèi)型后,如果傳入類(lèi)型與預(yù)設(shè)類(lèi)型不匹配,直接報(bào)錯(cuò)
pHp8 聯(lián)合類(lèi)型
錯(cuò)誤信息
但是 pHp7 不同。雖然類(lèi)型是預(yù)設(shè)好的,但也可以通過(guò)傳入對(duì)應(yīng)的類(lèi)型來(lái)執(zhí)行。
pHp7執(zhí)行結(jié)果
該功能可用于限制參數(shù)類(lèi)型,更好地過(guò)濾參數(shù)。
2. 匹配表達(dá)式
該函數(shù)類(lèi)似于 pHp7 語(yǔ)句。
1. 匹配單個(gè)值
相比隱藏
2. 匹配多個(gè)條件
3. 默認(rèn)
具有相同的屬性
4. 不設(shè)置默認(rèn)值會(huì)報(bào)錯(cuò)
如果不設(shè)置會(huì)報(bào)錯(cuò)
5. 強(qiáng)制類(lèi)型匹配
默認(rèn)強(qiáng)制類(lèi)型匹配,下面代碼匹配的是int的值,但是搜索的值是 3,所以直接去
3. 空安全運(yùn)算符
此功能將非常有效地解決代碼冗余問(wèn)題。
pHp7中,有時(shí)會(huì)出現(xiàn)類(lèi)屬性的多條件判斷,如下代碼
上面的代碼返回結(jié)果為
但是在pHp8中,這個(gè)代碼冗余問(wèn)題得到了完美解決
pHp8 代碼
代碼
返回相同的結(jié)果
可以看出php 開(kāi)發(fā)特點(diǎn),pHp7 用 pHp8 中的一行代碼就可以實(shí)現(xiàn)。很好嗎?
4. 構(gòu)造函數(shù)屬性提升
pHp7 構(gòu)造函數(shù)代碼
pHp8 構(gòu)造函數(shù)代碼
5. 注釋
新加入的注解功能,寫(xiě)完這些功能,卡卡只覺(jué)得這個(gè)用處不大,估計(jì)是個(gè)很好的理由。
但是為了文章的完整性,還是寫(xiě)出來(lái)給大家看看。
直接上代碼,pHp7獲取代碼的注釋用下面的代碼獲取。
上面的代碼中使用了幾個(gè)字符串操作。假設(shè)注釋不規(guī)范,出錯(cuò)的概率不小于你在代碼中寫(xiě)的分號(hào)數(shù)量。
既然有這樣的問(wèn)題,官方就為我們解決了這個(gè)問(wèn)題。讓我們看看它是如何用 pHp8 編寫(xiě)的。
關(guān)于類(lèi)的注釋這里沒(méi)有提到。有興趣的可以去官網(wǎng)查看相關(guān)信息。
6. 命名參數(shù)
關(guān)于 pHp8 命名參數(shù)的最后一點(diǎn)說(shuō)明
pHp7中使用了位置參數(shù),比如下面的代碼
也就是說(shuō),你傳入的參數(shù)對(duì)應(yīng)的是方法接收到的內(nèi)容。
那么pHp8中的一個(gè)新特性就是命名參數(shù),如下代碼
與上面代碼不同的是,每個(gè)參數(shù)在傳遞方法的時(shí)候都給了一個(gè)名字,但是這個(gè)名字只能是不帶$的參數(shù)。
這個(gè)新特性在代碼可維護(hù)性方面沒(méi)有任何優(yōu)勢(shì),我們也不知道為什么要設(shè)計(jì)它!
但是在參數(shù)部分還有一個(gè)值得稱(chēng)道的特性,就是可變參數(shù),類(lèi)似于 Go 的
但是這里必須要注意的一點(diǎn)是,如果使用可變參數(shù),傳遞參數(shù)時(shí)不能使用位置參數(shù),而是必須使用所有命名參數(shù)。
四、總結(jié)
本文名稱(chēng):php開(kāi)發(fā)特點(diǎn)pHp8.0新特性1.聯(lián)合類(lèi)型2.匹配php開(kāi)發(fā)工程師
鏈接地址:http://jinyejixie.com/news30/296230.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、企業(yè)網(wǎng)站制作、全網(wǎng)營(yíng)銷(xiāo)推廣、移動(dòng)網(wǎng)站建設(shè)、動(dòng)態(tài)網(wǎng)站、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容