PHP引用(&)案例介绍
发布时间:2020-12-13 21:02:22 所属栏目:PHP教程 来源:网络整理
导读:变量引用 ? 案例: ?php//变量单独引用$test = "a string!n";$quote = $test; echo $test; //a string!echo $quote;//a string! $quote = "exchange!n";echo $test; //exchange!echo $quote;//exchange! unset($quote);echo $test; //exchange! //函数传参
变量引用 ? 案例: <?php //变量单独引用 $test = "a string!n"; $quote = &$test; echo $test; //a string! echo $quote;//a string! $quote = "exchange!n"; echo $test; //exchange! echo $quote;//exchange! unset($quote); echo $test; //exchange! //函数传参引用 $num = 10; echo $num."n"; test($num); echo $num."n"; function test( &$num) { $num += 10; }
结论 PHP 的变量引用相当于不同的变量都指向同一个内容。也会操作这一份内容,如果删除其中一个引用,另外一个引用不受影响,相当与删除的变量不在指向同一个内容,但是不能为常量。(相当于一个人有好多个名字,及时去掉一个名字,也不会影响人这个实体) 函数引用返回 案例1: <?php $t = test(); // 1 var_dump($t); // int(1) $t = 20; $t = test(); //2 var_dump($t); //int(2) $t = &test(); //3 var_dump($t) ; //int(3) $t = 20; $t = test(); //21 var_dump($t); //int(21) function &test() { static $test = 0; $test += 1; echo $test."n"; return $test; }
案例2: ?php $t = test(); function &test() { static $test = 0; $test += 1; echo $test."n"; } $ php test.php 1 PHP Notice: Only variable references should be returned by reference in /home/q/www/zt.dujia.qunar.com/test.php on line 9
结论: 相当于 $t = &test; 说白了还是 变量之间的引用。 对象引用 案例: <?php class a{ var $abc="ABC"; } $b=new a; $c=$b; echo $b->abc;//这里输出ABC echo $c->abc;//这里输出ABC $b->abc="DEF"; echo $c->abc;//这里输出DEF ?>
引用,其实就是一个变量空间,赋予了多个操作名称,这些操作名称,都指向同一个操作空间,其中一个操作名称对其空间操作,其他操作名称得到的结果也会变化。 引用的作用: 一般来说,每次声明一个变量,其就会占用一定的空间。 函数传参的方便,直接修改原有空间的内容,同时也减少中间变量的空间的开销。 ? 更多内容请访问 八重樱:怎么从一名码农成为架构师的必看知识点:目录大全(持续更新)50W年薪挑战! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |