數(shù)據(jù)類型 1. 什么是類型 不同的數(shù)據(jù)類型其實(shí)就是所存儲數(shù)據(jù)的不同種類,。 整型(integer):用來存儲整數(shù),。 浮點(diǎn)型(float):用來存儲實(shí)數(shù)。 字符串型(string):用來存儲字符串。 布爾型(boolean):用來存儲真(true)或者假(false),。 數(shù)組型(array):用來存儲一組數(shù)據(jù),。 對象型(object):用來存儲一個類的實(shí)例。 在強(qiáng)類型語言中,,例如C語言,,一個變量只能存儲一種類型的數(shù)據(jù),并且這個變量在使用前必須聲明,。PHP作為弱類型語言,,給變量賦什么類型的值,這個變量就是什么類型,。 $hello = 100; //由于100為整型,,因此$hello變量為整型 2. 整型 整型是數(shù)據(jù)類型中最基本的類型,整型的取值從-2147483648到 2147483648,。 例如:3560 //十進(jìn)制整數(shù) 01223 //八進(jìn)制整數(shù) 0x1223 //十六進(jìn)制整數(shù) 3. 浮點(diǎn)型 浮點(diǎn)型表示實(shí)數(shù),。這個數(shù)據(jù)類型的大小為8個字節(jié)。取值2.2E-308~1.8E 308,。 4. 布爾型 布爾型只有兩個值,,就是true和false。 其他的數(shù)據(jù)類型基本都有布爾類型: a) 整型,,為0時,,其布爾屬性為false,為非零值時,,其布爾屬性為true,。 b) 浮點(diǎn)型,為0.0時,,其布爾屬性為false,,為非零值時,其布爾屬性為true,。 c) 字符串型,,為空字符串“”或者零字符串“0”時,其布爾屬性為false,,包好除此以外的字符串時其布爾類型為true,。 d) 數(shù)組型,若不含任何元素,,其布爾屬性為false,,只包含元素,則其布爾屬性為true,。 e) 對象型,,資源型,,其布爾類型永遠(yuǎn)為true。 f) null型,,其布爾屬性永遠(yuǎn)為false,。 5. 字符串型 字符串型的數(shù)據(jù)是表示在引號之間的。雙引號和單引號都可以表示字符串,,但是兩種表示方法也有一定的區(qū)別。雙引號是可以表示所有的字符,,但是在其中的變量顯示變量的值,,而不是變量的變量名,而有些特殊字符加上“/”符號就可以了,;單引號內(nèi)的字符串是被直接表示出來的,。 實(shí)例: 執(zhí)行結(jié)果 6. 數(shù)組型 數(shù)組是PHP變量的集合,是按照“鍵值”與“值”的對應(yīng)關(guān)系組織數(shù)據(jù)的,。數(shù)組的鍵值既可以是整數(shù),,也可以是字符串。另外,,數(shù)組不特意表明鍵值得默認(rèn)情況下,,數(shù)組元素的鍵值為從零開始的整數(shù)。 在PHP中使用list()和array()函數(shù)來創(chuàng)建數(shù)組,,也可以直接進(jìn)行賦值,。 實(shí)例:使用array()函數(shù)創(chuàng)建數(shù)組 方式一 執(zhí)行結(jié)果 分析:(1)程序中”=>”為數(shù)組賦值,數(shù)組的下標(biāo)只是存儲的標(biāo)識,,沒有任何意義,,數(shù)組元素的排列以加入的先后順序?yàn)闇?zhǔn)。 (2)本程序采用for循環(huán)輸出數(shù)組,,其中count函數(shù)返回?cái)?shù)組的個數(shù),,echo函數(shù)返回當(dāng)前數(shù)組指針的索引值對。 方式二 執(zhí)行結(jié)果 方式三 執(zhí)行結(jié)果 7. 對象型 對象就是類的實(shí)例,。當(dāng)一個類被實(shí)例化以后,,這個被生成的對象被傳遞給一個變量。這個變量就是對象型變量,。對象型變量屬于資源型變量,。 8. null型 null型是僅擁有null這個值得類型。這個類型用來標(biāo)記一個變量為空,。一個空字符串與null是不同的,。在數(shù)據(jù)庫存儲時會把空字符串和null區(qū)分處理。null型在布爾判斷時永遠(yuǎn)為false,。很多情況下,,在聲明一個變量的時候可以直接先賦值為null型,如$value = null; 9. 資源類型 資源類型是十分特殊的數(shù)據(jù)類型。它表示PHP的擴(kuò)展資源,,可以是一個打開的文件,,也可以是一個數(shù)據(jù)庫連接,甚至可以是其他數(shù)據(jù)類型,。 10.?dāng)?shù)據(jù)類型之間的相互轉(zhuǎn)換 a) 自動數(shù)據(jù)類型轉(zhuǎn)換 這種轉(zhuǎn)換方式最常用,,直接輸入數(shù)據(jù)的轉(zhuǎn)換類型即可。float型轉(zhuǎn)換為整數(shù)int型,,小數(shù)點(diǎn)后面的數(shù)將被舍棄,。如果float數(shù)值超過了整數(shù)的取值范圍,則結(jié)果可能是0或者整數(shù)的最小負(fù)數(shù),。 實(shí)例: 執(zhí)行結(jié)果 b) 強(qiáng)制數(shù)據(jù)類型轉(zhuǎn)換 在PHP中,,可以使用settype函數(shù)強(qiáng)制轉(zhuǎn)換數(shù)據(jù)類型。語法: bool settype(var string type) 注:type的可能值不能包含資源類型數(shù)據(jù),。 執(zhí)行結(jié)果 二,、標(biāo)量類型的聲明 默認(rèn)情況下,所有PHP文件都處于弱類型校驗(yàn)?zāi)J?。PHP7加了標(biāo)量類型聲明的特性,。 語法:declare(strict_types=1); 通過strict_types的值(1或0)來表示校驗(yàn)?zāi)J剑?表示嚴(yán)格類型校驗(yàn)?zāi)J剑饔糜诤瘮?shù)調(diào)用和返回語句,;0表示強(qiáng)制類型校驗(yàn)?zāi)J健?/p> 注:可以聲明標(biāo)量類型的參數(shù)類型包括:int,、float、bool,、string,、interface、array和callable,。 1. 強(qiáng)制模式 2. 嚴(yán)格模式 |
|