关于PHP引用之我的理解(不一定对,理解也是在慢慢进化中)

 1 <?php
 2 $suspect = false;
 3 function change($suspect) {
 4     $suspect = true;
 5     var_dump($suspect);
 6 };
 7 
 8 change($suspect);
 9 echo "<br>";
10 var_dump($suspect);

以上代码返回的结果是:

bool(true)
bool(false)

如果把行3改为引用,即代码改为如下:

 1 <?php
 2 $suspect = false;
 3 function change(&$suspect) {
 4     $suspect = true;
 5     var_dump($suspect);
 6 };
 7 
 8 change($suspect);
 9 echo "<br>";
10 var_dump($suspect);

那我们将得到的结果是:

bool(true)
bool(true)

如果不用引用赋值,函数中的变量改变了量,但在函数之外,依然还是原来的量。

这也就介绍了为什么在block spam这一节中isSuspect函数为什么要用引用的原因了吧!

当然,引用还有许多其他的知识点,有时间再补充吧!

 

《未完待续》

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。