php支持哪8种数据类型,PHP八种数据类型+使用实例
PHP的八種數據類型
?PHP中變量的數據類型通常不是由程序員設定的,準確的說,是PHP根據該變量使用的上下文在運行時決定的,簡單的說就是,我們不需要設定變量的數據類型,PHP會自動識別。
四種標量數據類型
boolean(布爾型)
也叫bool型,只有兩種值,true或者是false,它不區分大小寫
string(字符串型)
字符串是連續的字符序列,由數字,字母和符號組成。
integer(整型)
整型就是我們常說的整數,它只能是整數
float(浮點型)
浮點數據類型就是我們常見的小數,它既可以用來存儲整數,也可以存儲小數。
兩種復合數據類型
array(數組)
數組是一組數據的組合,它把一系列的數組組合起來,形成一個可操作的整體。
object(對象)
對象是系統中用來描述客觀事物的一個實體,它是構成系統的一個基本單位。一個對象由一組屬性和對這組屬性進行操作的一組服務組成。
兩種特殊類型
resource(資源)
資源是一種特殊的變量類型,保存了到外部資源的一個引用:如打開文件、數據庫連接、圖形畫布區域等。
空值(null)
空值,在名字上來看它就是沒有值,它表示沒有為該變量設置任何值。
php:布爾型(boolean)數據類型實例詳解
只能保存兩個值true值和false值。它不區分大小寫,所以true寫成TRUE是一樣的。
}else{echo '假';
}
代碼運行結果:真
注意:在PHP中不是只有boolean值為假,在一些特殊情況下非boolean值也被認為是假。
這些特殊情況為:0,0.0,“0”,空白字符串(“”),只聲明沒有賦值的數組等。
php:字符串(string)數據類型實例詳解
在PHP中,有三種定義字符串的方式,分別是單引號('),雙引號(“)和定界符(<<
單引號和雙引號的不同之處就在雙引號所包含的變量會自動的被替換成實際數值,而單引號所包含的的變量則按普通的字符創輸出,這段換什么意思呢,我們下面來一下示例
單引號和雙引號定義字符串不同之處的示例
<?php $i = 'cyy';echo "$i";echo "
";echo '$i';
示例運行結果如下圖:
除了上面的不同點之外,再有就是兩者對轉義字符的使用不同。使用單引號時,只要對單引號“ ' ”進行轉義即可,但使用雙引號(")時,還要注意“ " ”、“$”等字符的使用,這些特殊字符都要通過轉義符“”來顯示,常用的轉義字符如下表:
這里有一點要注意的是,
和在Windows系統中沒有什么區別,都可以當作回車符。但是在Linux系統中則是兩種效果,在Linux中,
表示換到下一行,卻不會回到行首;而表示光標回到行首,但仍然在本行,如果有使用Linux操作系統的,可以嘗試一下。
在定義一些簡單的字符串時,使用單引號是一個更好的處理方式。如果使用雙引號,PHP將花費一些時間來處理字符串的轉移和變量的解析,因此,在定義字符串時,如果沒有特別的要求,我們最好使用單引號
界定符示例
代碼如下:
這和雙引號效果相同,可以輸出$i
$i的值為: $istd?>
代碼運行結果:
結束標識符必須單獨另起一行,并且不允許有空格。在標識符前后有其他字符或符號,也會發生系統錯誤,包括注釋。
php:整型(integer)數據類型實例詳解
什么是整型數據類型
整型數據類型就是我們常說的整數,它只能是整數,像123456,或者-123456,這都代表整型,這些是十進制的,還可以寫八進制的,十六進制的。如果使用八進制表示,數字前面必須加0,如果用十六進制,需要加0x.
整型是要有一個有效范圍的,有效范圍是-2447483648~+2147483647
既然有存儲范圍了,那我們現在說兩個整型相加一定等于整型嗎?不一定,因為超過了整型的存儲范圍呢會產生一種現象,叫做溢出的現象,當給定的數值超出了int型所能表達的最大范圍時,將會被當做float型處理,浮點類型它的存儲范圍比整型大。
如果在八進制中出現了非法數字(8和9),則后面的數字會被忽略掉。(最新測試頁面似乎停止運行了)
php:浮點型(float)數據類型實例詳解
浮點型的有效范圍是1.8E-308~1.8E+308。
浮點型數據默認有兩種書寫格式,一種標準格式,如下
3.1415
-35.8
還有一種科學記數法格式
3.14*10^3 可以使用3.14e3來表示
浮點(float)數據類型示例
在下面的例子中,我們將測試不同的數字。PHP var_dump() 會返回變量的數據類型和值:
<?php $x = 10.3605;var_dump($x);echo '
';$x = 2.4e3;var_dump($x);echo '
';$x = 8E-5;var_dump($x);echo '
';
代碼運行結果:
浮點型的數據只是一個近似的值,所以要盡量避免浮點型數值之間的比較大小,因為最后的結果都是不準確的。像下面這樣
}else{echo 'false';
}
代碼運行的結果:false
php:數組(array)數據類型實例詳解
數組的定義示例
<?php $arr1 = array('a','b');$arr2 = array(0=>'a',1=>'b');$arr3 = ['a','b'];$arr4[0] = 'a';
數組中的元素個數是可以更改的,只要給數組賦值,數組就會自動增加長度。
php:對象(object)數據類型實例詳解
如果要在定義的類里面訪問成員的屬性或者方法,可以使用偽變量 $this 。$this 用于表示 當前對象 或 對象本身 。
例子:
var $name; //人的名字
var $age; //人的年齡
//人的成員 say() 方法
functionsay() {echo "我的名字叫:".$this->name."
";echo "我的年齡是:".$this->age;
}
}//類定義結束
//實例化一個對象
$p1 = newPerson();//給 $p1 對象屬性賦值
$p1->name = "cyy";$p1->age = 25;//調用對象中的 say()方法
$p1->say();
運行該例子,輸出:
我的名字叫:cyy
我的年齡是:25
php:資源(resource)數據類型實例詳解
什么是資源數據類型?
資源數據類型是PHP4引進的。資源是一種特殊的變量類型,保存了到外部資源的一個引用:如打開文件、數據庫連接、圖形畫布區域等。
資源是通過專門的函數來建立和使用的。
資源變量在PHP中的使用
打印結果:
php:空值(null)數據類型實例詳解
空值(null)是不區別大小寫的,也就是null與NULL或Null是一樣的。
在PHP中被賦予空值的情況有三種:
第一種:
尚未被賦值
第二種:
被賦值為 NULL。
第三種:
被unset()函數處理過的變量
is_null函數用來判斷變量是否為null,這個函數是返回一個boolean型,如果變量為null,則返回true,否則返回false。unset()函數是用來銷毀變量。
php數據類型轉換實例詳解
PHP中的類型轉換非常簡單,有三種轉換方法:
第一種:
只需要在要轉換的變量之前加上用括號括起來的類型名稱即可,像下面這樣
<?php $num1 = 3.14;$num2 = (int)$num1;var_dump($num1);echo '
';var_dump($num2);
代碼運行結果:
第二種:
使用3個具體類型的轉換函數,intval()、floatval()、strval()
<?php $num = '123.9abc';$num2 = intval($num);var_dump($num2);echo '
';$num2 = floatval($num);var_dump($num2);echo '
';$num2 = strval($num);var_dump($num2);
代碼運行結果:
第三種:
使用settype()函數,該函數可以將指定的變量轉換成指定的數據類型,參數var為指定的變量;參數type為指定的數據類型。參數type有7個可選值,即boolean,float,integer,array,null,object和string,如果轉換成功setype()函數返回true,否則返回false。如下:
<?php $num = '123.9';$res = settype($num,'int');var_dump($res);echo '
';var_dump($num);
代碼運行結果:
當字符串轉換為整型或浮點型時,如果字符串是以數字開頭的,就會先把數字部分轉換為整型,在舍去后面的字符串;如果數字中含有小數點,則會取到小數前一位。
PHP數據類型轉換實例
本實例將使用第一種和第三種兩種方法將指定的字符串進行類型轉換,比較兩種方法之間的不同,代碼如下:
<?php $num = '3.1415926r*r';echo (integer)$num.'
';echo $num.'
';echo settype($num,'integer').'
';echo $num;
代碼運行結果:
從上面的的實例可以看到,使用integer操作符能直接輸出轉換后的變量類型,并且原變量不發生任何變化。而是用settype()函數返回的是1,也就是true,原變量就改變了,在實際應用中,可根據自己的需求選擇轉換方式。
PHP數據類型檢測實例詳解
PHP檢測數據類型的函數如下表
PHP數據類型檢測實例
PHP檢測數據類型的函數功能和用法都是相同的,我們下面的實例使用is_numeric()函數來檢測變量中的數據是否是數字。
}else{echo '不是數字類型';
}
歡迎QQ溝通討論:965794175
總結
以上是生活随笔為你收集整理的php支持哪8种数据类型,PHP八种数据类型+使用实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql过滤效率和java过滤效率_如
- 下一篇: 静态内部类----Java