php資料類型之查看與判斷資料類型
我們知道了一個資料的類型,才能進行下一步操作。後面的時候,大家可以學到更多的知識-自訂功能(函數(shù))。
我們來做一個場景模擬:(註:眼前不用會寫這個函數(shù),以後會教大家)
假設,我們可以寫一個智能的功能(函數(shù)),它讓有一個功能,就是打開一個裝有學生成績的電子表格。這個函數(shù)非常先進。
????1.只有一個人的時候,就會回到一個人的成績,成績是整數(shù)或浮點型變數(shù)。
????2.有2或兩個以上人的時候,返回一個數(shù)組類型變量,數(shù)組中裝有多個人的成績
????3.如果沒有人的時候,則返回布爾值的變量,變數(shù)值為false
透過上面的一個場景模擬,我們知道了,一個函數(shù)(功能)有可能傳回不同的資料類型。因此,我們可以根據(jù)不同的類型來做不同的事情。
判斷資料型態(tài)很重要,我們需要嚴格掌握。
【默寫級知識點】顯示類型的函數(shù)、得到類型的函數(shù)、判斷類型的函數(shù)
查看資料型別
#????1.gettype(傳入一個變數(shù)) 能夠獲得變數(shù)的型別
????2.var_dump(傳入一個變數(shù)) 輸出變類型與值
<?php //聲明一個變量88.8,你可以自己多做幾次實驗換成其他類型看看$type輸出是多少 $float = 88.8; $type = gettype($float); echo $type; ?>
<?php //多換幾個類型試試 $str = '你喜歡尊上還是喜歡殺仟陌?'; var_dump($str); ?>
判斷資料型別
我們使用is_* 系列函數(shù)。 is_types這一系列的函數(shù),來判斷某個東西是不是某個類型。如果是這個類型回傳真,不是這個類型回傳假。 is_int 是否為整數(shù)
is_bool 是否為布林
is_float 是否為浮點is_string 是否為字串
is_array 是否是陣列is_object 是否是物件
is_null 是否為空
<?php //is_* 系列函數(shù)有個特點,就是如果是這個類型就返回的是真。不是這個數(shù)據(jù)類型就返回的是假 //聲明類型為假 $fo = false; if(is_bool($fo)){ echo '執(zhí)行真區(qū)間'; }else{ echo '執(zhí)行假區(qū)間'; } //檢查未聲明的變量$p是否為空,為空就執(zhí)行真區(qū)間 if(is_null($p)){ echo '執(zhí)行真區(qū)間'; }else{ echo '執(zhí)行假區(qū)間'; } echo "<br/>"; //字符串類型的數(shù)值,看看執(zhí)行的是真還是假 $str = '18.8'; if(is_numeric($str)){ echo '執(zhí)行真區(qū)間'; }else{ echo '執(zhí)行假區(qū)間'; } echo "<br/>"; //把sca的值換成整型、浮點、布爾和字符串試試 $sca = true; //如果為標量,執(zhí)行真區(qū)間 if(is_scalar($sca)){ echo '執(zhí)行真區(qū)間'; }else{ echo '執(zhí)行假區(qū)間'; } echo "<br/>"; //換成echo,is_int試試,為什么echo執(zhí)行假區(qū)間呢? if(is_callable('var_dump')){ echo '執(zhí)行真區(qū)間'; }else{ echo '執(zhí)行假區(qū)間'; } ?>######:is_types 很好記。 is_ 在前後面跟類型即可。 ######變數(shù):整數(shù)(int) 浮點(float)、布林(bool)、字串(string)######混合型別: 陣列(array)、物件(object)### ###特殊類型:空(null)、 資源(resouce)、回呼(callback)######為什麼最後的實驗中echo執(zhí)行假區(qū)間呢? ###答:因為echo 不是函數(shù),是基本語法。大家眼前可以不用理解函數(shù)和基本文法的差別。了解和不了解在實際開發(fā)中沒有影響。知道有這個知識點就行。 ###