PHP引用

在PHP 中引用的意思是:不一样的名字访问同一个变量内容. 与C语言中的指针是有差异的.C语言中的指针里面存储的是变量的内容在内存中存放的地址 PHP 的引用容许你用两个变量来指向同一个内容php

今天只说变量的引用指针

<? 
$a="ABC"; 
$b =&$a; 
echo $a;//这里输出:ABC 
echo $b;//这里输出:ABC 
$b="EFG"; 
echo $a;//这里$a的值变为EFG 因此输出EFG 
echo $b;//这里输出EFG 
?> 
上面的这个代码,很简单。    
开辟了一个空间,里面放了“ABC”,而后用变量$a指引  
变量$b的引用也指引到$a引用的空间地址
而后,修改了其中一个,两个都发生了变化,由于两个变量的引用地址都是同样的。

如今咱们能够来讨论一个很尿性的问题了code

<?php
$arr = array(1,2,3,4);
  
foreach($arr as &$v)
{
	echo $v;
}
echo PHP_EOL;
foreach($arr as $v)
{
	echo $v;
}
?>
你们能够猜猜最后的输出结果
答案是:1234    1233
为何是这个答案呢?
由于在第一次foreach输出的时候,咱们使用的引用符,使$v的空间地址和$arr的最后一个输出,$arr[4]连在一块儿了     
$v=$arr[4]这个意思    
而后咱们第二次foreach的时候,咱们在输出变量的同时,每次都在修改$arr[4]的值
而后咱们就获得了这个奇葩的答案了。
相关文章
相关标签/搜索