1. 程式人生 > >變數的八種資料型別------06

變數的八種資料型別------06

目錄

一. PHP變數型別-布林型別

二: PHP標量型別-整型

三. PHP標量型別-浮點型

四: PHP標量型別-字串型

五: PHP特殊型別-資源

六: PHP特殊型別-空型別(NULL)

七: 複合型別-陣列

八: 複合型別-物件


一. PHP變數型別-布林型別

1.邏輯是 true 或 false。

2.布林型別(boolean):只有兩個值,一個是TRUE,另一個FALSE,可以理解為是或否;

3.它不區分大小寫,也就是說”TRUE”和“true”效果是一樣的。主要用在條件結構中,例如判斷是否滿足條件的時候,是用“true”表示滿足,用“false”表示不滿足。

4.當我們用”echo”指令輸出布林型別時,如果是“true”則輸出的是“1”,“false”則什麼也不輸出。我們可以使用“var_dump”函式,獲取它真正的資料型別。

5.eg:

<?php 
$man = "男";
$flag = $man == "男"; //其中使用“==”等於比較運算子  
	
echo $flag ;
echo "<br />" ;
var_dump($flag);
?>

效果:

1
bool(true)

   注意:我們可以發現,雖然使用”echo”指令輸出結果為1,而“var_dump”給我們表明了“$flag”為布林型別

的身份。

二: PHP標量型別-整型

1.整型(integer):是沒有小數的數字,類似於常見的整數。

2.整數規則:

  • 整數必須有至少一個數字(0-9)
  • 整數不能包含逗號或空格
  • 整數不能有小數點
  • 整數正負均可
  • 可以用三種格式規定整數:十進位制(日常使用的數字)、十六進位制(字首是 0x)或八進位制(字首是 0)

3.eg:

<?php
$data_int1 = 123;   // 十進位制數 
echo $data_int1;
echo "<br />";
$data_int2 = -123;  // 一個負數
echo $data_int2;
echo "<br />";
$data_int3 = 0123;   // 八進位制數(等於十進位制的 83)
echo $data_int3;
echo "<br />";
$data_int4 = 0x123;  // // 十六進位制數(等於十進位制的 26)
echo $data_int4;
echo "<br />";
?>

效果:

123
-123
83
291

  注意: 八進位制的“0123;”等於10進制中的83,十六進位制的“0x123;”等於10進位制的291。

三. PHP標量型別-浮點型

1.浮點數是有小數點或指數形式的數字;

2.浮點型(浮點數、雙精度數或實數),也就是通常說的小數,可以用小數點或者科學計數法表示。科學計數法可以使用小寫的e,也可以使用大寫的E;

<?php
$num_float1 = 1.234;    //小數點
echo $num_float1;
echo "<br />";
$num_float2 = 1.2e3;  //科學計數法,小寫e  
echo $num_float2;
echo "<br />";
$num_float3 = 7.0E-3;  //科學計數法,大寫E  
echo $num_float3;
echo "<br />";
?>

效果圖:

1.234
1200
0.007

注意: 我們可以發現,可以根據需要使用小數點或科學計數法來定義浮點型變數。

四: PHP標量型別-字串型

1.字串是由一系列字元組成,在PHP中,字元和位元組一樣,也就是說,一共有256種不同字元的可能性;

2.字串型可以用三種方法定義:單引號形式、雙引號形式和Heredoc結構形式

3.eg:單引號形式和雙引號形式

<?php 
$str_string1 = '我是字串';
$str_string2 = "我也是字串哦";
echo $str_string1;
echo "<br />";
echo $str_string2;
?>

效果圖:

我是字串
我也是字串哦

4. 當你的字串中包含引號的時候,我們怎麼辦?不要慌哈,咱們想想辦法

  • 在單引號中嵌入雙引號;
  • 在雙引號中嵌入單引號;
  • 使用轉義符“\”;

    eg:

<?php 
$str_string1 = '甲問:"你在哪裡學的PHP?"'; //單引號中嵌入雙引號
$str_string2 = "乙毫不猶豫地回答:'當然是慕課網咯!'"; //在雙引號中嵌入單引號
$str_string3 = '甲問:\'能告訴我網址嗎?\'';//單引號中嵌入單引號
$str_string4 = "乙答道:\"www.imooc.com\""; //在雙引號中嵌入雙引號
echo $str_string1;
echo "<br />";
echo $str_string2;
echo "<br />";
echo $str_string3;
echo "<br />";
echo $str_string4;
echo "<br />";
?>

. 效果圖:

甲問:"你在哪裡學的PHP?"
乙毫不猶豫地回答:'當然是慕課網咯!'
甲問:'能告訴我網址嗎?'
乙答道:"www.imooc.com"

4.當引號遇到美元咋辦?這裡的美元可不是真正的美元,而是用美元符號標識的變數。

  • 當雙引號中包含變數時,變數會與雙引號中的內容連線在一起;
  • 當單引號中包含變數時,變數會被當做字串輸出。

    eg:

<?php 
$love = "I love you!"; 
$string1 = "慕課網,$love"; //字串中雙引號解析變數
$string2 = '慕課網,$love'; //單引號不解析
echo $string1;
echo "<br />";
echo $string2;
?>

效果圖:

慕課網,I love you!
慕課網,$love

5.當我的字串很長怎麼辦

我們可以使用Heredoc結構形式的方法來解決該問題,首先使用定界符表示字串(<<<),接著在“<<<“之後提供一個識別符號GOD,然後是字串,最後以提供的這個識別符號結束字串

<?php 
$string1 = <<<GOD
我有一隻小毛驢,我從來也不騎。
有一天我心血來潮,騎著去趕集。
我手裡拿著小皮鞭,我心裡正得意。
不知怎麼嘩啦啦啦啦,我摔了一身泥.
GOD;

echo $string1;
?>

注意: 在賦值符號後,輸入定界符“<<<”,接著是識別符號,你可以用你的女神作為識別符號“GOD”,如第2行,也可以使用你喜歡的狗狗,“DOG”作為識別符號,但是,結尾處的識別符號也必須是一樣的。此外,在結尾的一行,如第7行,一定要另起一行,並且此行除了“GOD”,並以“;”號結束之外,不能有任何其他字元,前後都不能有,包括空格,否則會出現錯誤的哦。切記切記哦。

五: PHP特殊型別-資源

1.資源(resource):資源是由專門的函式來建立和使用的,例如開啟檔案、資料連線、圖形畫布。

2.我們可以對資源進行操作(建立、使用和釋放)任何資源,在不需要的時候應該被及時釋放

3.如果我們忘記了釋放資源,系統自動啟用垃圾回收機制,在頁面執行完畢後回收資源,以避免記憶體被消耗殆盡。

4.eg:

<?php 
//首先採用“fopen”函式開啟檔案,得到返回值的就是資源型別。
$file_handle = fopen("/data/webroot/resource/php/f.txt","r");//開啟檔案
if ($file_handle){
    //接著採用while迴圈一行行地讀取檔案,然後輸出每行的文字
    while (!feof($file_handle)) { //判斷是否到最後一行
        $line = fgets($file_handle); //讀取一行文字
        echo $line; //輸出一行文字
        echo "<br />"; //換行
    }
}
fclose($file_handle);//關閉檔案
?>

六: PHP特殊型別-空型別(NULL)

1.NULL是空型別,對大小寫不敏感;

2.NULL型別只有一個取值,表示一個變數沒有值;

3.當被賦值為NULL,或者尚未被賦值,或者被unset(),這三種情況下變數被認為為NULL;

4.NULL 值標示變數是否為空。也用於區分空字串與空值資料庫;

5.可以通過把值設定為 NULL,將變數清空;

5.eg1:

<?php
$x="Hello world!";
$x=null;
var_dump($x);
?>

效果圖:

NULL

6.eg2:

<?php 
 error_reporting(0); //禁止顯示PHP警告提示
 $var;
 var_dump($var);
 $var1 = null; //將“null”賦值給變數“$var1”;
 var_dump($var1);
 $var2 = NULL; //將“NULL”賦值給變數“$var2”;
 var_dump( $var2);
 $var3 = "節日快樂!";
 unset($var3); //將變數“$var3”登出定義。
 var_dump($var3);
?>

效果圖:

NULL
NULL
NULL
NULL

七: 複合型別-陣列

1. 陣列在一個變數中儲存多個值;

2.PHP var_dump() 會返回變數的資料型別和值;

3.eg:

<?php 
$cars=array("Volvo","BMW","SAAB");
var_dump($cars);
?>

效果圖:

array(3) { [0]=> string(5) "Volvo" [1]=> string(3) "BMW" [2]=> string(4) "SAAB" }

八: 複合型別-物件

1.物件是儲存資料和有關如何處理資料的資訊的資料型別;

2.在 PHP 中,必須明確地宣告物件;

3.首先我們必須宣告物件的類;對此,我們使用 class 關鍵詞,類是包含屬性和方法的結構;

4.然後我們在物件類中定義資料型別,然後在該類的例項中使用此資料型別

<?php
class Car
{
  var $color;
  function Car($color="green") {
    $this->color = $color;
  }
  function what_color() {
    return $this->color;
  }
}
?>