1. 程式人生 > >PHP-變數(二)(變數值傳遞與引用傳遞,及值傳遞轉換成引用傳遞)

PHP-變數(二)(變數值傳遞與引用傳遞,及值傳遞轉換成引用傳遞)

1. PHP 中的資料型別簡單介紹

在講解 值傳遞 和 引用傳遞 之前,先來了解下 php 中的資料型別

php 中的資料型別大體分為三類:

① 標量資料型別:字串型、整型、浮點型、布林型。

② 複合資料型別:陣列、物件。

③ 特殊資料型別:資源 和 NULL。

2. 變數的值傳遞

所謂的值傳遞,是指將一個變數的值,賦值一份,傳給另一個變數。

修改其中一個變數的值,另一個變數的值不會發生改變。

舉例說明

這裡寫圖片描述

php 中 值傳遞 的資料型別有如下這些

字串型、整型、浮點型、布林型、陣列。

變數的值傳遞在記憶體中,到底是如何表現的呢?

這裡寫圖片描述

3. 變數的引用傳遞(傳地址)

引用傳遞,將一個變數的資料地址,複製一份,傳給另一個變數,修改一個變數的值,另一個變數的值也會發生改變。

這裡寫圖片描述

4. PHP 基本資料型別變數,變成引用傳地址

在 PHP 中,也可以讓基本資料型別的變數,變成引用傳地址,只需在變數前面加 & 符號。

// 定義一個基本資料型別變數
$a = 100;

// 將該變數通過&符號轉變成引用資料型別。
$b = &$a;

echo "\$b = ".$b."<br>";

echo "改變\$a的值為200<br>";

$a = 200;

echo "\$b = "
.$b;

執行結果

這裡寫圖片描述