• 技术文章 >后端开发 >PHP问题

    什么是引用传参?引用传参的用法?引用参数的赋值?(附代码)

    慕斯慕斯2021-06-04 11:13:40原创72
    上篇文章给大家介绍了《什么是静态变量?其特点是?作用域在哪?(附实例)》,本文继续给大家介绍什么是引用传参?引用传参的用法?引用参数的赋值?(附代码),一起看看吧

    什么是引用传参:

    具体我们以举例和代码为例;

    <?php
         /****** 引用传参*/
         //变量引用赋值
         $he = '我喜欢你';
         $she = &$he;
         echo $he;
         echo '<br/>';
         echo $she;
         
    ?>

    代码解析:

    首先定义一个初始变量($he)赋值为,我喜欢你;紧接着另一个($she),也是想说我喜欢你;此时的she找到我喜欢你的地址,并且赋值给了(she),然后我们输出(echo)$he;再来输出(echo)$she;我们会发现两个输出结果都是:我喜欢你,代码如下所示:

    22.JPG

    当我们尝试改变she的值,此时$she的值赋值为,我不喜欢你;当我们再次运行此值的时候,我们会发现,显示结果都是:我不喜欢你;代码如下所示:

    23.JPG

    根据上述实例,我们可以知道变量的引用实际上就是$he找到“我喜欢你”这个地址,赋给了$she,也就是说他们两个($he和$she)同时通过一个地址找到了一个值,一旦此值发生了改变,那么他们两个的值会发生相同的改变;也就是说she是he的一个别名,通过上述,我们再一次了解了变量的引用;

    而在引用传参中:

    <?php
         /****** 引用传参*/
         //变量引用赋值
         $he = '我喜欢你';
         $she = &$he;
         $she = '我不喜欢你';
         echo $he;
         echo '<br/>';
         echo $she;
         echo '<hr>' ;
         $num = 15;
         function demo($no){
           $no +=5;
         }
         demo($num);
         echo $num;
         
    ?>

    代码解析:

    首先,我们定义一个变量($num);紧接着我们定义一个函数(function demo);然后我们在demo中传一个($no)变量,此时,当我要调用demo($num)时,我们输出(echo)num,此时的num会赋值给no,然后进行接下来的运算,接着当我们在外部输出(num)发现此时代码运行的结果仍然是15(运行结果如下图);没有任何变化;当我们在demo($no)前加一个取地址符(&),此时运算的结果会显示20(运行结果如下);根据上述,正常情况下我们的实参变量demo($num)会赋值给形参($no);但是形参的赋值是引用的方式(&)赋值,综上可知,他们两个就相当于$no=&$num;任意一个改变其值,都会影响最终的结果。

    24.JPG

    25.JPG

    推荐学习:《PHP视频教程

    以上就是什么是引用传参?引用传参的用法?引用参数的赋值?(附代码)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:引用传参
    上一篇:什么是静态变量?其特点是?作用域在哪?(附实例) 下一篇:PHP中什么是变量函数?如何使用变量函数?(分享)
    第16期线上培训班

    相关文章推荐

    • PHP错误抑制符(@)导致引用传参失败Bug的分析_php技巧• PHP错误抑制符(@)导致引用传参失败Bug的分析_PHP• 关于pdo引用传参,字段是不是不能当成参数传入?

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网