《我的php學習第二十五天——PHP的數據類型》要點:
本文介紹了我的php學習第二十五天——PHP的數據類型,希望對您有用。如果有疑問,可以聯系我們。
PHP有8大數據類型,分為三個大類
標量數據類型(簡單數據類型)
整型:int或者integer
浮點型:float或者double
布爾型:bool或者Boolean
字符型:string
復合數據類型
數組:array
對象:object
特殊數據類型
資源:resource
空:NULL
為什么會有數據類型?
對于電腦來說,根本沒有數據類型,只有二進制.
是因為人有需求,需要對數據進行分門別類,所以才定義了這么些數據類型.
PHP是一門弱類型的語言.
強類型:在給變量賦值之前,需要對變量的類型進行聲明,而且給變量的值必須是指定類型的數據
Int num;
Num = 10;
//num = ‘abcd’;//系統會報錯,提示數據類型不符合
弱類型:變量分為兩個部分,一部分是變量名,變量值,變量名是不區分數據類型的,值是有類型
$a = 10; //10是整型,但是a變量本身沒有數據類型.
整型:int,指的是在一定范圍內的整數.
PHP_INT_MAX 代表整型的最大值.
如何判斷一個變量到底是什么類型?var_dump(變量)
PHP還支持其他進入:八進制和十六進制
八進制:逢十進一,假設一個十進制的數值為17,21
PHP默認都是認為是十進制,除非碰到以0開始,而且在輸出的時候會將其他類型進制轉化成十進制輸出.
$oct = 021;
如何讓系統在輸出的時候保留原來的進制輸出?printf(‘%o’,$a);
十六進制:逢16進1
1,2,3,4,5,6,7,8,9,a,b,c,d,e,f---------10,11…1f--------20,21….
$hex = 0x15; //21
1.進制轉換
十進制轉八進制
十進制轉十六進制
十六進制轉十進制(其他進制轉十進制都可以采用同樣的方式)
PHP為用戶提供了進制轉換的函數
Hexdec():十六進制轉十進制
Dechex():十進制轉十六進制
Bindec():二進制轉十進制
Decbin():十進制轉二進制
Octdec():八進制轉十進制
Decoct():十進制轉八進制
浮點型:float
強類型語言里
Float:4個字節,單精度
Double:8個字節,雙精度
單精度和雙精度表示能夠精確的位數不一樣,單精度的精確長度7位,雙精度大概是16位左右
單精度值:1234567890 ----------》1234570000
在PHP中
Float=double=8個字節
PHP中浮點數能夠保存的最大值:1.8 * 10^302
因為浮點數會丟失精度,所以有可能導致看到的浮點數跟實際存儲的浮點數一樣,因此不采用浮點數進行比較
時間戳是一類整型
布爾類型
正常的,布爾類型有兩個值:TRUE和FALSE
在PHP中,只要非0,都為TRUE
在PHP中,有哪些會被認為是FALSE呢?
以下部分都是FALSE,這部分FALSE不能用來輸出或者var_dump判斷,屬于不同的數據類型,需要通過if進行判斷,從而得出其正確的布爾結果
FALSE
0
0.0
’’
’0’
空數組
null值
字符類型
由字符組成的數據類型就是字符類型.
定義方式有多種
$str1 = ‘abcd’;
$str2 = “abcd”;
單引號和雙引號有什么區別?
雙引號號中會對符合條件的變量進行解析,得到其結果;單引號會直接原樣輸出所有字符.
在雙引號中,能夠解析更多的轉義字符
單引號里只能識別\’對于單引號的轉義
雙引號里不能識別\’對單引號的轉義,雙引號\”,\r\n\t都可以識別
注意:轉義字符\不能放倒字符串的最后,因為放到最后會對最后的引號(不論單雙)都會進行轉義.
字符串定義方式:定界符
語法:$string = <<<STR
字符串內容
STR;
使用雙引號也可以實現js的輸出
說明雙引號跟定界符方式沒有什么明顯的區別
定界符也可以輸出變量
注意:使用定界符輸出字符串能夠保留其原有的格式.
什么時候使用定界符,什么時候使用雙引號?
他們之間沒有什么區別.通常,當字符串非常長而且復雜的時候,盡可能的使用定界符,因為其格式非常明確,便于識別.如果字符串很短的話,那么就建議使用雙引號.
什么時候使用雙引號,什么時候使用單引號?
有這么一種認為:單引號的效率比雙引號效率高.如果輸出的字符串不需要解析變量和一些轉義字符,那么盡量使用單引號,其他情況下使用雙引號或者定界符.
定界符需要注意以下幾點
定界符的第一行 <<< STR之后不能有任何內容,連空格都不行
使用定界符,注釋不能卸載定界符內容里面
最后部分STR要獨占一行
最后部分STR必須要頂格,如果出現了這種錯誤,很難找出來
在雙引號或者定界符中解析變量注意事項
保證變量名與后面的其他字符串之間沒有聯系(可以通過空格來進行區分)
使用{}對變量進行包含,顯示的告訴編譯器大括號里面的是一個變量
提示瀏覽器使用指定編碼解析html文件
PHP是以中腳本語言, 也是一種解釋型語言
Index.c
Index.java ====》 index.class ==è執行index.class文件
前面兩種都需要先進行編譯,產生一個執行文件
Index.php ======》解釋
維易PHP培訓學院每天發布《我的php學習第二十五天——PHP的數據類型》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/7180.html