摘要:近日,懷著新語(yǔ)言的一門心思,在鍵盤上敲敲打打。究其原因,就是因?yàn)閮蓚€(gè)根本不是一個(gè)玩意兒反思為弱類型語(yǔ)言,這種非同類型賦值簡(jiǎn)直寫起來(lái)不要太舒服。
近日,懷著新語(yǔ)言的一門心思,在鍵盤上敲敲打打。golang的強(qiáng)類型有時(shí)候著實(shí)讓人有點(diǎn)摸不著頭腦(對(duì)于習(xí)慣了php的老人來(lái)說(shuō))
下面是一個(gè)golang的例子
再看看命令行
雖然if中間的var賦值user挺蠢的,而且就golang的強(qiáng)類型申明user類型之后再來(lái)var顯得很小白,但是梳理整個(gè)邏輯,發(fā)現(xiàn)了一個(gè)重要的信息點(diǎn),甚至是背心出了一身冷汗!反思重現(xiàn):最開始我想的是ResponseSuc里頭統(tǒng)一返回user,所以就用了if else做user的數(shù)據(jù)處理,按照php的邏輯,第一個(gè)if里頭不用var,直接user=****就行了,根本不用管類型。(所以var的出現(xiàn),就是因?yàn)槿サ魐ar之后限制了user的類型而產(chǎn)生,為了語(yǔ)法不報(bào)錯(cuò)而不經(jīng)過大腦,蠢哭)
結(jié)果看到了,就是第一個(gè)user打印出來(lái)了一大坨數(shù)據(jù),而最下面的user沒有數(shù)據(jù)。究其原因,就是因?yàn)閮蓚€(gè)user根本不是一個(gè)玩意兒
php為弱類型語(yǔ)言,這種非同類型賦值簡(jiǎn)直寫起來(lái)不要太舒服。然而golang的語(yǔ)法和php對(duì)比,終于讓我發(fā)現(xiàn),弱類型的嚴(yán)重缺陷,見下圖
注golang中if之前就已經(jīng)開始報(bào)錯(cuò),因?yàn)槭欠峭愋偷谋容^,程序根本運(yùn)行不起來(lái)
注php里頭可見0=="0"是true的
同理,可以驗(yàn)證null,""等特殊的玩意兒
那么有什么影響呢
好吧,雖然用了谷歌,還是追到了騰訊的ip上PHP弱類型在實(shí)戰(zhàn)中導(dǎo)致的漏洞總結(jié)
附上php的類型比較圖php.net
最后,帖子瀏覽完,感覺大部分PHP系統(tǒng)可能都在裸奔!
友情鏈接《刑法》案例查詢
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/31433.html
摘要:原始數(shù)據(jù)其中是我要進(jìn)行處理的字段,處理完成之后再次使用進(jìn)行編碼。所以正確的做法是在解碼的時(shí)候不要傳遞第二個(gè)參數(shù)讓解碼結(jié)果是一個(gè)對(duì)象,然后操作對(duì)象的屬性,操作完成之后再次編碼就不會(huì)出現(xiàn)偏差。 場(chǎng)景:某項(xiàng)目客戶反饋,輸出的結(jié)果 JSON 中有個(gè)要求為對(duì)象的數(shù)據(jù)字段,在某些情況下返回的是 [] 而不是 {};數(shù)據(jù)由公司其他部門提供,查看原始數(shù)據(jù)的時(shí)候,沒有發(fā)現(xiàn)任何問題;后來(lái)因?yàn)橐尤肽承╊A(yù)處...
摘要:學(xué)習(xí)第一課變量注釋輸出上圖是一段超級(jí)簡(jiǎn)單的輸出的代碼,是不是超級(jí)簡(jiǎn)單呢今天文章講的就是這幾行代碼的知識(shí)。變量可以通過變量名訪問。用來(lái)定義聲明一個(gè)變量。有返回值,總是返回。輸出格式化的字符串,有返回值,返回值是輸出的字符串的長(zhǎng)度。 來(lái)一波 Hello World,各位看官先感受下。PHP學(xué)習(xí)第一課:變量、注釋、輸出上圖是一段超級(jí)簡(jiǎn)單的輸出 Hello World 的代碼,是不是超級(jí)簡(jiǎn)單呢...
摘要:但是在以來(lái),在面向?qū)ο笾校瑸榉椒◣?lái)了類型約束,然而這些都非常的雞肋,從文檔上可以看到。支持對(duì)象接口支持?jǐn)?shù)組支持匿名函數(shù)類型約束不能用于標(biāo)量類型如或。它的運(yùn)作方式,是在中設(shè)置一個(gè)標(biāo)志位,讓函數(shù)調(diào)用和返回類型檢查符合類型約束。 起點(diǎn) 眾所周知,PHP 是弱類型語(yǔ)言,與其他強(qiáng)類型語(yǔ)言項(xiàng)目,在這方面會(huì)有很多的坑,但是已經(jīng)發(fā)展到 PHP 7 之后,PHP 也對(duì)類型約束有了所指,并且在許多流行框...
摘要:若要開啟刪除鏡像功能,需要修改鏡像倉(cāng)庫(kù)的配置文件。一個(gè)可行的解決辦法是手動(dòng)更改鏡像倉(cāng)庫(kù)的配置,暫時(shí)禁止鏡像的操作。 用友云開發(fā)者中心是基于Docker容器進(jìn)行微服務(wù)架構(gòu)應(yīng)用的落地與管理。相信各位同學(xué)在使用的過程中,會(huì)發(fā)現(xiàn)隨著Docker鏡像的增多,占用磁盤空間也約來(lái)越多。這時(shí)我們需要清理私有鏡像倉(cāng)庫(kù)中不需要的鏡像。但在實(shí)際操作時(shí),才會(huì)發(fā)現(xiàn)這本以為很簡(jiǎn)單的任務(wù)中卻暗藏玄機(jī),遇到了不少的麻...
閱讀 2102·2023-04-25 20:52
閱讀 2487·2021-09-22 15:22
閱讀 2126·2021-08-09 13:44
閱讀 1770·2019-08-30 13:55
閱讀 2810·2019-08-23 15:42
閱讀 2285·2019-08-23 14:14
閱讀 2877·2019-08-23 13:58
閱讀 3008·2019-08-23 11:49