PHP強(qiáng)化之07 - 數(shù)據(jù)類型

----- 最后更新【2018-12-6】-----

簡(jiǎn)介

在PHP程序中,一共支持9種原始數(shù)據(jù)類型墩剖。我們將它們劃分為三類:標(biāo)量數(shù)據(jù)類型咐低、復(fù)合數(shù)據(jù)類型和特殊數(shù)據(jù)類型。

一悉抵、標(biāo)量數(shù)據(jù)類型

標(biāo)量數(shù)據(jù)類型有4種肩狂,包括布爾型、字符串姥饰、整型傻谁、浮點(diǎn)型。

1列粪、boolean
布爾變量是PHP變量中最簡(jiǎn)單的审磁,它保存一個(gè)True或者False值,其中True或者False是PHP的內(nèi)部關(guān)鍵字岂座。
定義一個(gè)布爾型的變量态蒂,只需將True或者False賦值給該變量即可。

2费什、string
字符串是連續(xù)的字符序列钾恢,字符串中的每個(gè)字符只占用一個(gè)字節(jié)。
在PHP中鸳址,定義字符串有4種方式:?jiǎn)我?hào)瘩蚪,雙引號(hào),Heredoc稿黍、Nowdoc疹瘦。

3、integer
整數(shù)數(shù)據(jù)類型只能包含整數(shù)闻察,這些數(shù)據(jù)類型可以是正數(shù)或負(fù)數(shù)拱礁。在32位的操作系統(tǒng)中,有效的范圍是-2 147 483 648~2147 483 647(也就是 -2^31 ~ 2^31 -1)辕漂。
整型值可以使用十進(jìn)制呢灶,十六進(jìn)制,八進(jìn)制或二進(jìn)制表示钉嘹,前面可以加上可選的符號(hào)(- 或者 +)鸯乃。

4、float
浮點(diǎn)型(也叫浮點(diǎn)數(shù) float,雙精度數(shù) double 或?qū)崝?shù) real)缨睡。
浮點(diǎn)數(shù)據(jù)類型可以用來(lái)存儲(chǔ)數(shù)字鸟悴,也可以保存小數(shù)。它提供的精度比整數(shù)大得多奖年。

二细诸、復(fù)合數(shù)據(jù)類型

復(fù)合數(shù)據(jù)類型包括數(shù)組、對(duì)象和可調(diào)用陋守。

5震贵、array
數(shù)組可以是二維、三維或者多維水评,數(shù)組中的各元素可以是string猩系、integer或double,也可以是array中燥。

6寇甸、object
要?jiǎng)?chuàng)建一個(gè)新的對(duì)象 object,使用 new 語(yǔ)句實(shí)例化一個(gè)類

7疗涉、callable
自 PHP 5.4 起可用 callable 類型指定回調(diào)類型 callback拿霉,也就是說(shuō)
callback可以等同于callable 。

三博敬、特殊數(shù)據(jù)類型友浸。

特殊數(shù)據(jù)類型包括資源和無(wú)類型。

8偏窝、resource
資源是一種特殊的變量收恢,保存在外部資源的一個(gè)應(yīng)用,資源是通過(guò)函數(shù)來(lái)進(jìn)行建立的祭往。

9伦意、null
特殊的 NULL 值表示一個(gè)變量沒有值。NULL 類型唯一可能的值就是 NULL硼补,任何變量的初始值都是null驮肉。

如下情況一個(gè)變量會(huì)被認(rèn)為是 NULL:被賦值為 NULL、尚未被賦值(或未定義的變量)已骇、被 unset()离钝。

四、偽類型

偽類型(pseudo-types) 是 PHP 文檔里用于指示參數(shù)可以使用的類型和值褪储。 請(qǐng)注意卵渴,它們不是 PHP 語(yǔ)言里原生類型。

1鲤竹、mixed(混合類型)
mixed 說(shuō)明一個(gè)參數(shù)可以接受多種不同的(但不一定是所有的)類型浪读。
例如 gettype() 可以接受所有的 PHP 類型,str_replace() 可以接受字符串和數(shù)組。

2碘橘、number(數(shù)字類型)
number 說(shuō)明一個(gè)參數(shù)可以是 integer 或者 float互订。

3、callback(回調(diào)類型痘拆,又稱為 callable)
本文檔中在 PHP 5.4 引入 callable 類型之前使用 了 callback 偽類型仰禽。二者含義完全相同。

4错负、array|object(數(shù)組 | 對(duì)象類型)
array|object 意思是參數(shù)既可以是 array 也可以是 object坟瓢。

5、void(無(wú)類型)
void 作為返回類型意味著函數(shù)的返回值是無(wú)用的犹撒。void 作為參數(shù)列表意味著函數(shù)不接受任何參數(shù)。

五粒褒、類型的判斷與轉(zhuǎn)換

1识颊、判斷與轉(zhuǎn)換參考表

類型 強(qiáng)制轉(zhuǎn)換 轉(zhuǎn)換函數(shù) 類型判斷
通用方法 settype() gettype()
整型 (int), (integer) intval() is_integer()
浮點(diǎn)型 (float), (double), (real) is_float()
布爾型 (bool), (boolean) is_bool()
字符串 (string) strval() is_string()
數(shù)組 (array) array() is_array()
對(duì)象 (object)
資源 is_resource()
NULL (unset) unset() is_null()
二進(jìn)制字符串 (binary)
數(shù)字或數(shù)字字符串 is_numeric()
標(biāo)量(integer/float/string/boolean) is_scalar()

2、獲取變量的類型

string gettype ( mixed $var )    //獲取變量的類型

注意:
1)不要使用 gettype() 來(lái)測(cè)試某種類型奕坟,因?yàn)槠浞祷氐淖址谖磥?lái)的版本中可能需要改變祥款。此外,由于包含了字符串的比較月杉,它的運(yùn)行也是較慢的刃跛。
2)當(dāng)需要判斷的類型的時(shí)候,建議使用 is_* 函數(shù)代替苛萎。

六桨昙、參考

官方手冊(cè):http://php.net/manual/zh/language.types.intro.php

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市腌歉,隨后出現(xiàn)的幾起案子蛙酪,更是在濱河造成了極大的恐慌,老刑警劉巖翘盖,帶你破解...
    沈念sama閱讀 217,907評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件桂塞,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡馍驯,警方通過(guò)查閱死者的電腦和手機(jī)阁危,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)汰瘫,“玉大人狂打,你說(shuō)我怎么就攤上這事∫髁撸” “怎么了菱父?”我有些...
    開封第一講書人閱讀 164,298評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我浙宜,道長(zhǎng)官辽,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,586評(píng)論 1 293
  • 正文 為了忘掉前任粟瞬,我火速辦了婚禮同仆,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘裙品。我一直安慰自己俗批,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,633評(píng)論 6 392
  • 文/花漫 我一把揭開白布市怎。 她就那樣靜靜地躺著岁忘,像睡著了一般。 火紅的嫁衣襯著肌膚如雪区匠。 梳的紋絲不亂的頭發(fā)上干像,一...
    開封第一講書人閱讀 51,488評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音驰弄,去河邊找鬼麻汰。 笑死,一個(gè)胖子當(dāng)著我的面吹牛戚篙,可吹牛的內(nèi)容都是我干的五鲫。 我是一名探鬼主播,決...
    沈念sama閱讀 40,275評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼岔擂,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼位喂!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起智亮,我...
    開封第一講書人閱讀 39,176評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤忆某,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后阔蛉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體弃舒,經(jīng)...
    沈念sama閱讀 45,619評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,819評(píng)論 3 336
  • 正文 我和宋清朗相戀三年状原,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了聋呢。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,932評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡颠区,死狀恐怖削锰,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情毕莱,我是刑警寧澤器贩,帶...
    沈念sama閱讀 35,655評(píng)論 5 346
  • 正文 年R本政府宣布颅夺,位于F島的核電站,受9級(jí)特大地震影響蛹稍,放射性物質(zhì)發(fā)生泄漏吧黄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,265評(píng)論 3 329
  • 文/蒙蒙 一唆姐、第九天 我趴在偏房一處隱蔽的房頂上張望拗慨。 院中可真熱鬧,春花似錦奉芦、人聲如沸赵抢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)烦却。三九已至,卻和暖如春先巴,著一層夾襖步出監(jiān)牢的瞬間短绸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工筹裕, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人窄驹。 一個(gè)月前我還...
    沈念sama閱讀 48,095評(píng)論 3 370
  • 正文 我出身青樓朝卒,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親乐埠。 傳聞我的和親對(duì)象是個(gè)殘疾皇子抗斤,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,884評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)丈咐,斷路器瑞眼,智...
    卡卡羅2017閱讀 134,656評(píng)論 18 139
  • 1.認(rèn)識(shí)php php是服務(wù)端嵌入到HTML中的腳本語(yǔ)言。php的功能包括但不限于: 收集表單數(shù)據(jù) 生成動(dòng)態(tài)網(wǎng)頁(yè) ...
    楠哥哥_0b86閱讀 846評(píng)論 3 1
  • 國(guó)家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說(shuō)閱讀 10,970評(píng)論 6 13
  • 制作簡(jiǎn)介 本書仍為約卡伊·莫爾作品棵逊,由書友@以冰進(jìn)行文本校對(duì)伤疙,我將其制作成書。 題外話 莫爾的作品很多辆影,但是國(guó)內(nèi)譯...
    hyx108閱讀 1,270評(píng)論 1 2
  • 今天莫名的在校園走了一趟徒像,覺得不一樣了,很多東西都變了蛙讥,我亦如此锯蛀。再也想不起當(dāng)年咬咬牙堅(jiān)持走過(guò)的日子,同時(shí)再...
    南_木閱讀 242評(píng)論 0 2