在之前的文章中,給大家?guī)?lái)了《5分鐘搞定PHP的if else語(yǔ)法和NULL數(shù)據(jù)類(lèi)型》,今天繼續(xù)給大家?guī)?lái)PHP知識(shí)的講解,給大家介紹一下PHP數(shù)據(jù)類(lèi)型的查看和判斷。希望能夠幫助到大家!
PHP數(shù)據(jù)類(lèi)型的查看和判斷
查看數(shù)據(jù)類(lèi)型
我們?cè)趯W(xué)習(xí)中可以根據(jù)不同的數(shù)據(jù)類(lèi)型來(lái)進(jìn)行不同的操作,那怎樣去查看一個(gè)數(shù)據(jù)類(lèi)型就顯得尤為重要,我們知道了一個(gè)數(shù)據(jù)的類(lèi)型,才能進(jìn)行下一步操作。那接下來(lái)給大家介紹兩個(gè)查看數(shù)據(jù)類(lèi)型的函數(shù)。
-
gettype
(傳入一個(gè)變量) 能夠獲得變量的類(lèi)型
gettype傳入一個(gè)已聲明的變量,就能夠傳出這個(gè)變量的變量類(lèi)型,舉例如下:
<?php //聲明一個(gè)變量10086,可以自己多試幾次換成其他類(lèi)型看看$b輸出是多少 $a = 10086; $b = gettype($a); echo $b; ?>
輸出結(jié)果:
由此可見(jiàn),gettypt()能夠得到變量的變量類(lèi)型,但是需要echo顯示出來(lái),那有沒(méi)有可以直接輸出變量類(lèi)型的函數(shù)呢?
-
var_dump
(傳入一個(gè)變量) 輸出變類(lèi)型和值
var_dump不僅可以直接輸出變量的變量類(lèi)型,還可以輸出變量的值。舉例如下:
<?php //可以自己多換幾個(gè)類(lèi)型試試 $a = '好好學(xué)習(xí),天天向上'; var_dump($a); ?>
輸出結(jié)果:
由此可見(jiàn),var_dump()不僅能夠直接輸出變量的變量類(lèi)型,還能夠直接輸出變量的值。
判斷數(shù)據(jù)類(lèi)型
在日常使用和學(xué)習(xí)中,我們不止要會(huì)查看變量的數(shù)據(jù)類(lèi)型,也要會(huì)判斷。變量的數(shù)據(jù)類(lèi)型不算多,判斷起來(lái)也非常的簡(jiǎn)單,就需要用到is_*
系列函數(shù)了。
之所以叫系列函數(shù),是因?yàn)樗⒉皇菃为?dú)存在的,既然要判斷某個(gè)東西是不是某個(gè)類(lèi)型,那往往要跟需要判斷的變量類(lèi)型一起出現(xiàn)。
如果是這個(gè)類(lèi)型返回真,不是這個(gè)類(lèi)型返回假。
-
is_bool()
是否為布爾型
若變量是布爾型,則返回結(jié)果為真,輸出真區(qū)間;若變量不是布爾型,則返回結(jié)果是假,輸出假區(qū)間。
<?php //賦值變量flse是布爾型 $a = false; if(is_bool($a)){ echo '好好學(xué)習(xí)'; }else{ echo '天天向上'; } ?>
輸出結(jié)果:
輸出結(jié)果為:好好學(xué)習(xí)。輸出真區(qū)間,返回結(jié)果為真,變量是布爾型。
-
is_null
是否為空型
若變量是空型,則返回結(jié)果為真,輸出真區(qū)間;若變量不是空型,則返回結(jié)果是假,輸出假區(qū)間。
<?php //并未對(duì)$a賦值,$a無(wú)意義是空型,(is_null($a)判斷變量是否為空型 if(is_null($a)){ echo '好好學(xué)習(xí)'; }else{ echo '天天向上'; } ?>
輸出結(jié)果:
輸出結(jié)果為:好好學(xué)習(xí)。輸出真區(qū)間,返回結(jié)果為真,變量是空型。
還有:
-
is_int
是否為整型 -
is_float
是否是浮點(diǎn) -
is_string
是否是字符串 -
is_array
是否是數(shù)組 -
is_object
是否是對(duì)象 -
is_resource
是否為資源 -
is_scalar
是否為標(biāo)量 -
is_numeric
是否為數(shù)值類(lèi)型 -
is_callable
是否為函數(shù)
他們和我剛才列舉出來(lái)的兩例語(yǔ)法相同,is_* 系列函數(shù)并不難,很好記,相信大家能夠熟練掌握。
推薦學(xué)習(xí):《PHP視頻教程》