php是弱類型語言,在運算中會根據運算子將資料轉換成該運算子所能處理的資料。
1.自動轉換
- if($a | 數字) { 。。。} //if裡面的變數或者數字會自動轉換成布爾
- 算術運算子會將資料變為數文書處理
$a = "3";$b = "5";$c = $a + $b ;var_dump($c);//8 integer
3. 串連運算子. 轉成字串類型
$str = '123'.true.'abc';//1231abc string
4. 比較子,分幾種情況
①兩個數字比較–正常情況
②其中有一個資料是布爾型的,則都轉成布爾型進行比較 true>false
③資料中沒有布爾型的,但其中有一個資料是數字,則轉成數字 比較
④兩邊都是數字字串,轉成數字來比較
⑤比較子中兩邊都是字串類型,從首個字元開始依次比較ASCII值,哪個大就停止後續比較。
一些轉換規則:
“12” –> 12
“1.2” –> 1.2
“1.2a”- –> 1.2
“a1.2” —> 0
“1.1a1” —> 1.1
“0” —> false
“1” —> true
0 —> false
“0.0” —> true
“abc” —> 0
“” —> 0
“” – >false
header("content-type:text/html;charset=utf-8");$name = "tom";if($name){ echo'$name為真'.'';}else{ echo'$name為假'.'';}//1.在算數運算子中的類型轉換 :會轉換成數字進行計算$a = "1.1";//"1.1a" 會轉換成1.1 , "a1.1"會轉換成0$b = "7";$c = $a + $b ;echo$c," ",getType($c),'';//12 double//串連運算子.其結果是字串類型$a = 5;$b = true;// true 轉換為 1 , false 轉換成 0$c = $a.$b ;echo$c," ",getType($c),'';//51 string//比較子,其結果一定是true或false$a = false ;$b = 5;//如果兩邊至少一個布爾值,則把非布爾值資料轉為布爾值比較,其結果類型也是布爾$c = ($a < $b);//這裡$b轉為true , $c = false < true;echo$c," ",getType($c),'';//1 boolean//比較子中,兩邊不存在布爾類型但存在數字,則都轉為數字類型比較$a = 5 ;$b = "abc";//$b 要轉為數字比較,這裡為0 $c = ($a > $b);echo$c," ",getType($c),'';//1 boolean//比較子中兩邊都是字串類型$a = "abc" ;$b = "abd";$c = ($a < $b);//從首個字元開始依次比較ASCII值,哪個大就停止後續比較echo$c," ",getType($c),'';//1 boolean
2.強制轉換
$a = 11.5;$b = (int)$a;//強制轉換成int賦值給$becho$a." 類型:".getType($a).'';//11.5 類型:doubleecho$b." 類型:".getType($b).'';//11.5 類型:double$c = (string)$a;echo$c." 類型:".getType($c).'';//11.5 類型:11.5 類型:string$d = (boolean)$a;echo$d." 類型:".getType($d).'';//1 類型:boolean$e = (float)$b;//強制轉換成浮點數echo$e." 類型:".getType($e).'';//11 類型:doublesetType($c,"float");echo$c." 類型:".getType($c).'';//11.5 類型:double
3.與類型相關的函數
- var_dump() :輸出一個變數的完整資訊
- getType():擷取一個變數的類型名稱,返回是一個類型名稱字串
- setType(變數,”目標類類型”); 設定一個變數的類型
- isset() 如果變數存在並且值不是 NULL 則返回 TRUE ,否則返回 FALSE 。
- empty 判斷一個變數資料是否為空白
- unset() 銷毀一個變數
- is_int()
- is_numeric() —1 ,1.2 ,”1.2” ,”12” 都為真
- is_array() is_scalar—是否基礎資料型別 (Elementary Data Type): string float int boolean
- is_null — 檢測變數是否為 NULL
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('
').text(i)); }; $numbering.fadeIn(1700); }); });
以上就介紹了php之類型轉換,包括了php方面的內容,希望對PHP教程有興趣的朋友有所協助。