$arr = array(0); $arr2 = $arr; $arr2[0] = 1; echo $arr[0]; //打印輸出0

class B { public $i = " /> 国产免费啪视频观看网站,开心久久激情,国精产品一区一区三区

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP中=賦值操作符對不同數(shù)據(jù)類型的不同行為

首先解釋賦值操作符=的行為,看下面的例子:
復(fù)制代碼 代碼如下:
$i = 0;
$j = $i;
$j = 0;
echo $j; // 打印輸出0

$arr = array(0);
$arr2 = $arr;
$arr2[0] = 1;
echo $arr[0]; //打印輸出0

class B
{
public $i = 0;
}

$b = new B();
$c = $b;
$c->i = 1;
echo($b->i); // 打印輸出1

從這個(gè)例子可以看出,如果=操作符右邊的變量為基本數(shù)據(jù)類型或者數(shù)組,那么=操作符把右邊變量的一份拷貝賦值給左邊變量;如果右邊變量不是基本數(shù)據(jù)類型或者數(shù)組,如class,那么=會把一個(gè)指向右邊變量的引用賦值給左邊變量。注意:是指向右邊變量的引用,而不是指向右邊變量所指的內(nèi)容區(qū)域的引用;具體看下邊的例子
復(fù)制代碼 代碼如下:
$a = new A();
$b_a = $a;
$b_r = &$a;

$b_a = null;
var_dump($a); //打印 object(A)[2],$a所指向的內(nèi)容還在
$b_r = null;
var_dump($a); // 打印 null,$a所指向的內(nèi)容被清除了

上面的例子也說明了,如果用 $var = &$a 的方式賦值的話,用$var=null來銷毀變量$var的話事實(shí)上是把$var所指內(nèi)容被設(shè)置null了,其實(shí)這句話也暗示了任何一個(gè)指向該內(nèi)容區(qū)域的引用變量均可用來銷毀該內(nèi)容區(qū)域的內(nèi)容。所以,要銷毀變量$var的話用 unset($var) 。PS:事實(shí)上一這種方式賦值$var只是個(gè)引用,占用不了多少內(nèi)存,要不要銷毀沒所謂,這里這是說下必須用unset的方式銷毀。

下面則是《用戶手冊》中的“引用的解釋”的例子:

$a =& $b;
下邊有這么一句解釋:
這意味著 $a 和 $b 指向了同一個(gè)變量。
注: $a 和 $b 在這里是完全相同的,這并不是 $a 指向了 $b 或者相反,而是 $a 和 $b 指向了同一個(gè)地方。
引用是什么?
復(fù)制代碼 代碼如下:
php 中引用意味著用不同的名字訪問同一個(gè)變量內(nèi)容。這并不像 C 的指針,替代的是,引用是符號表別名。注意在 php 中,變量名和變量內(nèi)容是不一樣的,因此同樣的內(nèi)容可以有不同的名字。最接近的比喻是 Unix 的文件名和文件本身

主站蜘蛛池模板: 国产 第1页 | 性欧美激情在线观看 | 午夜在线日韩免费精品福利 | 成人亚洲综合 | 国产一区二区三区高清视频 | 成年网站未满十八禁毛片免费 | 播放久久国产乱子伦精品 | 国产人成午夜免视频网站 | 五月婷婷六月丁香激情 | 国内精品1区1区3区4区 | 色女人在线| 久久大香线蕉综合爱 | 日本一区二区三区免费看 | 久久免| 国产成人综合亚洲欧洲色就色 | 亚洲区在线播放 | 欧美三级在线观看视频 | a级精品九九九大片免费看 a加勒比一本东京 | 天天做天天摸天天爽天天爱 | 欧美激情视频在线观看 | 精品日本亚洲一区二区三区 | 国产高清一区二区三区四区 | 六月婷婷久香在线视频 | 国产伦乱 | 国产91在线精品福利 | 91精品国产91久久久久久青草 | 国产精品第100页 | 久久久久综合中文字幕 | 天天精品视频在线观看资源 | 亚洲免费二区三区 | 黄网站免费观看 | 五月天六月婷婷开心激情 | 小视频在线观看免费 | 婷婷黄色网 | 亚洲最大的成人网 | 在线视频www | 日韩在线视频不卡 | 视频在线观看一区二区三区 | 中文一区在线观看 | 国产精品欧美韩国日本久久 | 亚色中文 |