php笔记:引用定位

  最近,打算通读一遍php官方文档。在看到引用的时候,文档中提出:“许多 PHP 的语法结构是通过引用机制实现的”。还举例了“global引用” 和 “$this” ,都是通过引用传递的。文档中,有一句话,吸引了我的注意力,“unset $var 不会 unset 全局变量”。我也做了相应的demo测试,还真是如此。详见下代码。

[code lang=”php”]
$a = 345;
function test()
{
global $a;
$a = 123;
unset($a);
}

test();
var_dump($a); // int(123)
var_dump($GLOBALS[‘a’]); // int(123)
[/code]

如果在函数里删除变量$a,只是把函数作用域里的$a删除,并不会对全局变量$a产生影响。如下图

附上官网的这一章节:https://www.php.net/manual/zh/language.references.spot.php

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注