色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

PHP后端很難返回規(guī)范的JSON數(shù)據(jù)嗎?

PHP作為當(dāng)下主流的腳本語(yǔ)言,因其簡(jiǎn)單高效的特點(diǎn)備受關(guān)注,基于PHP開(kāi)發(fā)的項(xiàng)目也是很多的,可以說(shuō)PHP是作為Web開(kāi)發(fā)的首選開(kāi)發(fā)語(yǔ)言。但是PHP本身是弱類型語(yǔ)言,所以在某些地方的支持度上也是存在一些問(wèn)題的,比如對(duì)于JSON的處理就存在一定的差異化。

PHP弱類型可能會(huì)導(dǎo)致JSON返回時(shí)不夠標(biāo)準(zhǔn)

PHP它是弱類型的腳本語(yǔ)言,所以在輸出方面所有類型默認(rèn)會(huì)被當(dāng)成String輸出。可能有PHP開(kāi)發(fā)者不太理解這句話,舉例來(lái)說(shuō):如果通過(guò)PHP從數(shù)據(jù)庫(kù)中查詢數(shù)據(jù),那返回的數(shù)據(jù)其實(shí)都被當(dāng)成了String類型,即使字段類型是int、double這類的也會(huì)被當(dāng)成String處理。

在這種情況下,不同的開(kāi)發(fā)者寫出來(lái)的JSON可能就存在差異,比如:

{"name":"張三","age":22}

{"name":"張三","age":"22"}

另外在PHP環(huán)境下輸出對(duì)象類型的字段時(shí),也會(huì)出現(xiàn)問(wèn)題,有些時(shí)候下會(huì)將{}返回成[],比如:

{"name":"張三","info":{}}

{"name":"張三","info":[]}

上面例舉的這2個(gè)例子危害性很大,特別是作為API輸出時(shí)會(huì)讓調(diào)用方崩潰。

PHP后端如何規(guī)范返回JSON?

弱類型語(yǔ)言看似方便容錯(cuò)性高,其實(shí)更容易出現(xiàn)Bug,這也是一些安全系數(shù)要求高的項(xiàng)目并不會(huì)采用PHP這類弱類型語(yǔ)言去開(kāi)發(fā)的原因。

那PHP在對(duì)JSON處理這塊應(yīng)該怎么做呢?我的建議就是定義好數(shù)據(jù)返回模板,然后進(jìn)行數(shù)據(jù)填充生成JSON字符串再返回。

以上就是我的觀點(diǎn),對(duì)于這個(gè)問(wèn)題大家是怎么看待的呢?歡迎在下方評(píng)論區(qū)交流~我是科技領(lǐng)域創(chuàng)作者,十年互聯(lián)網(wǎng)從業(yè)經(jīng)驗(yàn),我了解更多科技知識(shí)!