首頁 >後端開發 >php教程 >php學習之資料型別之間的轉換介紹

php學習之資料型別之間的轉換介紹

高洛峰
高洛峰原創
2016-11-30 10:28:05879瀏覽

程式碼如下: 
/*資料型別之間互相轉換 
* 一種是強制轉換 
* setType(變數,型別); //int,integer,float,double等等。
* 這個函數將原變數的型別改變,用var_dump();可以看變數 

* 在賦值前使用(型)的形式,不會改變原變數的型別 
* $a=(int)"123abc "; 

* $變數=intval(變數或值); 
* $變數=floatval(變數或值); 
* $變數=stringval(變數或值); 

* 注意:整數在記憶體中佔4個位元組2.147e9 
* 浮點型在記憶體中佔8個位元組 


* 一種是自動轉換(最常用方式),變數會更具運作環境自動轉換 

* 與變數和類型有關的一些常用函數 
* isset();//判斷一個變數是否存在,值如果是null也表示空。
* empty();//判斷一個變數是否為空"",null 
* unset();//刪除一個變數 
* setType();//設定一個變數類型 
* getType();//取得一個變數型別var_dump();取得型別與值 

* 變數型別測試函數 
* is_bool();//判斷是否為布林類型 
* is_int() is_integer() is_long()////////////////////////1是否為整數
* is_float(), is_double() is_real()//... 
* is_array() 
* is_object() 
* is_resource() 
* 是否為標量is_numberic()//判斷是否為任何一種數字,或數字字串 
* is_callable()//判斷是否為有效的函數名稱 

* 常數的聲明與使用 
* 1.常數是一個簡單值的識別常數符 
* 2.常數定義後不能再改變它的值,也不能使用unset()或其他的函數取消 
* 3.常量可以不用理會變量範圍的規則而在任何地方都可以定義和訪問 
* 4 .常數使用define("常數名",值); 
* 5.常數名在聲明和使用時都不使用"$" 
* 6.常數名稱習慣都使用大寫 
* 7.常數的值只能用標量型(int,float,bool,string) 
* 8.常數一定要在聲明時就給值 
* 9.defined("常數");//判斷常數是否有 

* 預定義量和魔術常數常數 
* echo __FILE__;//輸出目前檔案名稱目錄_魔術常數 
* echo CASE_LOWER;//輸出固定的值_預定義常數 


*/ 
//這個函數將原始變數的類型改變,用原變數的類型改變, var_dump();可以查看變數 
$str="100.12345abc"; 
setType($str,int); 
var_dump($str); 

//在賦值前使用(類型)的形式的形式100.12345abc"; 
$a=(int)$str; 
var_dump($a);//輸出int(100) 
var_dump($str);//輸出值不變,"100.12345abc"字符串不是以數字開頭,則轉換成0 

//不同類型運算 
$a=10; 
$b="100abc"; 
$c=true; 
$d=12.34; 
$sum=$a+ $c;//布林型自動轉換成1,結果為11 
$sum=$a+$b;//結果為110 
$sum=$a+$b+$c;//結果為111 
$sum=$ a+$b+$c+$d;//結果為123.34,因為浮點型記憶體空間大,小記憶體轉大記憶體。

//判斷是否為陣列 
$a=array("one","two",1,3,6,8); 
if(is_array($a)){ 
print_r($a);//印出陣列 
}else{ 
echo $a; 


//定義常數,使用常數 
define("home","this is a home") 
$a=1005>
global $a;//因為$a是全域變數所以要​​用全域標記呼叫 
echo $a; 
echo home;//常數可以不用理會範圍,直接存取或定義 
}
demo(); 

/ /判斷常數是否存在 
if(defined("home") 

echo home; 

else 

define("home","this is a home");

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn