php資料類型轉換學習筆記

來源:互聯網
上載者:User

常用的資料類型有字串型、浮點型(單精確度浮點型float、雙精確度浮點型double)、整形、布爾型

1 其他類型轉化為整型
1.1 字串型轉化為整型
1.1.1 如果字串全部為數字,則直接全部轉換為整型,如果有小數點則會去除小數點後面的內容,如 '12' 跟 '12.3' 轉換為整型後都為12
1.1.2 如果字串以字母開頭則不管中間或後面有多少數字或小數點,轉換為整形後都為0。如'ab12.3c'轉換為整型後為0
1.1.3 如果以數字開頭,則會去掉數字後面的字元,如果有小數點則去除小數點後面的。如 '123.4abc' 、 '123abc' 轉換為整形後都為123

1.2 浮點型轉化為整型

1.2.1 如果浮點數含有小數點則去掉小數點後面的字元,如果沒有則直接變為整型 。如:浮點數 12.6 轉換為整形後為12

 


1.3 布爾型轉化為整型
1.3.1 布爾型轉換為整型時,true會轉換為 1 false 會轉換為 0其中NULL轉換為整型後為0   所以如果要判斷 if(NULL == 0){echo "NULL等於0";} 是會返回NULL等於0的


2 其他類型轉化為字串型
2.1 整型、浮點型轉換為字串型是直接在數字上加引號 如12 12.3 轉換為字串後為 "12" "12.3"
2.2 布爾型轉換為字串是,true會轉換成字串"1",false 跟NULL轉換為字串結果為空白字串,不會有輸出

3 其他類型轉化為浮點型
3.1 整型直接轉化為浮點型,數值不變,字串轉換為浮點型跟字串轉換為整型基本上是一樣的,只不過是當字串之間有小數點時,小數點會儲存。如 “12.3abc” 轉換之後為 12.3 其他形式的是一樣的方法
3.2 布爾型轉換為浮點型是,true會轉換成浮點型 1 ,false 跟NULL轉換為浮點型結果為0

4 其他類型轉化為布爾型
4.1 Null 字元串轉換為 布爾型為FALSE,非空為TRUE;整型跟浮點型的0轉換為布爾型為FALSE,其他為TRUE

4.2 NULL轉換為布爾型後結果為FALSE

PHP的資料類型轉換屬於強制轉換,允許轉換的PHP資料類型有:

•(int)、(integer):轉換成整形
•(float)、(double)、(real):轉換成浮點型
•(string):轉換成字串
•(bool)、(boolean):轉換成布爾類型
•(array):轉換成數組
•(object):轉換成對象
PHP資料類型有三種轉換方式:

•在要轉換的變數之前加上用括弧括起來的目標類型
•使用3個具體類型的轉換函式,intval()、floatval()、strval()
•使用通用類型轉換函式settype(mixed var,string type)
第一種轉換方式: (int)  (bool)  (float)  (string)  (array) (object)

 代碼如下 複製代碼
1.<?php
2.$num1=3.14;  
3.$num2=(int)$num1;  
4.var_dump($num1); //輸出float(3.14)  
5.var_dump($num2); //輸出int(3)  
6.?>

第二種轉換方式:  intval()  floatval()  strval()

 代碼如下 複製代碼
1.<?php
2.$str=”123.9abc”;  
3.$int=intval($str);     //轉換後數值:123  
4.$float=floatval($str); //轉換後數值:123.9  
5.$str=strval($float);   //轉換後字串:”123.9″   
6.?>

第三種轉換方式:  settype();

 代碼如下 複製代碼

1.<?php
2.$num4=12.8;  
3.$flg=settype($num4,”int”);  
4.var_dump($flg);  //輸出bool(true)  
5.var_dump($num4); //輸出int(12)  
6.?>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.