PHP資料型別

2021-10-07 01:26:21 字數 3487 閱讀 7967

一:php中的資料型別

資料型別:data type,在php中指的是儲存的資料本身的型別,而不是變數的型別。

php是一種弱型別的語言,變數本身沒有資料型別。

二: 三大類,八小類

1.簡單資料型別:

(1) 整形:int/integer(系統分配4個位元組儲存,表示整數)

(2)浮點型:float/double(系統分配8個位元組儲存,表示小數或者整形存不下的整數)

(3)字串型:string(系統根據實際長度分配,表示字串(引號))

(4)布林型別:bool/boolean(布林型別,只有兩個值true/false)

2.復合資料型別:

(5)物件型別:object,存放物件(物件導向)

(6)陣列型別:array,儲存多個資料(一次性)

3.特殊資料型別:

(7)資源型別:resource,存放資源資料(php外部資料,如資料庫、檔案)

(8)空型別:null,只有乙個值就是null(不能運算)

三:型別轉換

型別轉換:在很多條件下,需要指定的資料型別,需要外部資料(當前php取得的資料)轉換成目標資料

1.自動轉換:系統根據自己的判斷,自己轉換(用的比較多,效率偏低)

2.強制轉換:認為根據需要的目標型別轉換

在轉換過程中用的比較多的是轉布林型別(判斷)和轉數值型別(算術運算),先轉換成數值型別(整形和浮點型)再計算

四:型別轉換的方法

1.在變數前加乙個括號(),然後在裡面寫上對應的型別:int等,null型別要用到unset()

$str1

=123

;$str2

=(string)

$str1

;$str3

=(object)

$str1

;echo

gettype

($str2);

echo

gettype

($str3);

unset

($str1);

echo

gettype

($str1).

"";

執行結果:string  object  null
2.intval(),floatval(),strval()轉換成int,float,str型別

$str1

=123

;$str2

=floatval

($str1);

$str3

=strval

($str1);

echo

gettype

($str2).

"";echo

gettype

($str3).

"";

執行結果:double	string
3.settype($str,「int」)轉換成相對應的資料型別

$str

=123

;echo

gettype

($str).

"";settype

($str

,"object");

//返回的是boolean值

echo

gettype

($str);

//字串型別

執行結果:integer		object
五:型別判斷

型別判斷:通過一組型別判斷函式,來判斷變數,最終返回這個變數所儲存資料的資料型別

1.is_開頭後面跟型別名字的函式:is_***(變數名)(相同返回true,不同返回false)

$str

=123

;echo

is_int

($str).

"";settype

($str

,"object");

var_dump

(is_string

($str))

;

執行結果:1	false
2.bool型別不能用echo來檢視,可以使用var_dump結構檢視

3.使用gettype()

gettype()和settype()的區別

(1)gettype()是獲取資料型別得到的是該型別對應的字串

(2)settype()會改變資料本身

$str

=123

;echo

gettype

($str);

//integer型別

settype

($str

,"string");

//返回的是boolean值

echo

gettype

($str);

//字串型別

執行結果:integer  string
六:簡單資料型別

1.整數型別:儲存整數數值(4個位元組32位)預設有符號型別

decbin

():十進位制轉二進位制

decoct

():十進位制轉八進位制

dechex

():十進位制轉十六進製制

bindec

():二進位制轉十進位制

2.浮點型別:小數型別以及超過整數能儲存範圍的整數(不保證精度),精度範圍在15個有效數字左右

浮點型定義的兩種方式:$ f=1.23或$f=1.23e10

不要用浮點數做精確判斷:浮點數儲存的資料不夠精確,而且在計算機中凡是小數基本儲存都不精確

$f1

=0.7

;$f2

=2.1

;$f3=3

;if($f1

==$f2/3

)else

執行結果:不精準
3.布林型別:兩個值true和false,通常用於判斷,需要注意型別轉換

empty():判斷乙個變數是否被認為是空的。當乙個變數並不存在,或者它的值等同於false,那麼它會被認為不存在。

isset():isset函式是檢測變數是否設定。

語法:bool isset ( mixed var [, mixed var [, …]] )

返回值:

若變數不存在則返回 false

若變數存在且其值為null,也返回 false

若變數存在且值不為null,則返回 ture

同時檢查多個變數時,每個單項都符合上一條要求時才返回 true,否則結果為 false

php偽資料資料型別 PHP的資料型別

php的資料型別 資料型別 整體劃分 標量型別 int,float,string,bool 復合型別 array,object 特殊型別 null,resouce 整數型別int,integer 3種整數表示法 十進位制寫法 123 n1 123 八進位制寫法 0123 n2 0123 十六進製制寫...

PHP 資料型別

php 支援8種基本的資料型別。四種標量型別 boolean 布林型 integer 整型 float 浮點型,也稱作 double string 字串 兩種復合型別 array 陣列 object 物件 最後是兩種特殊型別 resource 資源 null null 為了確保 的易讀性,本手冊還介...

PHP 資料型別

要明確地將乙個值轉換成 boolean 用 bool 或者 boolean 來強制轉換。但是很多情況下不需要用強制轉換,因為當運算子,函式或者流程控制結構需要乙個boolean 引數時,該值會被自動轉換。參見型別轉換的判別。當轉換為 boolean 時,以下值被認為是false warning浮點數...