[PHP從小白到大牛]-006 PHP變量數據類型轉換(自動類型轉換)

自動類型轉換和強制類型轉換

  • 自動類型轉換, 顧名思義, 類型是自動轉換的, 不予要額外的代碼
  • 強制類型轉換, 須要使用代碼, 有明顯的轉換過程

自動類型轉換

  • $a = "1" + 123;

字符串鏈接符.

  • 不一樣於js, php的字符串鏈接符爲.

其餘類型轉數字(自動類型轉換)

echo 1 + true;
echo "\n";
echo 1 + false;
echo "\n";
echo 1 + null;
echo "\n";
echo 1 + "3king";
echo "\n";
echo 1 + '21a3b4c';
echo "\n";
echo 1 + '2a3b4c';
echo "\n";
echo 1 + '2e2a3b4c';
echo "\n";
echo 1 + 'true';
echo "\n";
echo 1 + array();
echo "\n";
echo 1 + fopen('1.txt','r+');
複製代碼
  • 你能總結出什麼規律?
    • true => 1
    • false => 0
    • null => 0
    • 非法字符串 => 0
    • 合法字符串 => 一直取到非法的前一位

其餘類型轉字符串(自動類型轉換)

echo '1'.true;
echo "\n";
echo '1'.false.'1';
echo "\n";
echo '1'.null.'1';
echo "\n";
echo '1'.array();
複製代碼

其餘類型轉布爾(自動類型轉換)

  • if判斷會自動轉換成布爾值
$dream = true;
if($dream){
  echo '我在北京2環買一套小別墅';
}else{
  echo '仍是老老實實的Coding吧';
}
複製代碼

其餘類型轉布爾值有什麼特色? 試舉例說明...

自動類型轉換的總結以下...

小練習

單選題php

如下PHP代碼片斷,運算結果正確的是()(選擇一項)spa

A echo 1+true;   //輸出結果爲:1

B echo 1+false;   //輸出結果爲:0

C echo  1+'2e4b5f';   //輸出結果爲:3

D echo 2+'hello';   //輸出結果爲:2
複製代碼
相關文章
相關標籤/搜索