zoukankan      html  css  js  c++  java
  • PHP 传值和传引用、传地址的区别

       传值,
       是把实参的值赋值给行参
       那么对行参的修改,不会影响实参的值

       传地址
       是传值的一种特殊方式,只是他传递的是地址,不是普通的如int
       那么传地址以后,实参和行参都指向同一个对象

       传引用
       真正的以地址的方式传递参数
       传递以后,行参和实参都是同一个对象,只是他们名字不同而已
       对行参的修改将影响实参的值  

      $a = "123";
      $b = &$a;
      echo $a."-".$b; // 输出:123-123
      echo "<br/>";
      $b = "456465"; // 输出:456465-456465
      echo $a."-".$b;

      // 结论 :
      // PHP 传引用时 形参 发声改变的时候 实参也发生改变;

    仅讨论一下值传递和引用:
       所谓值传递,就是说仅将对象的值传递给目标对象,就相当于copy;系统将为目标对象重新开辟一个完全相同的内存空间。
       所谓引用,就是说将对象在内存中的地址传递给目标对象,就相当于使目标对象和原始对象对应同一个内存存储空间。此时,如果对目标对象进行修改,内存中的数据也会改变。

  • 相关阅读:
    linux命令之free篇
    linux操作之逻辑分区与交换分区篇
    linux之软连接,硬连接篇
    Linux之磁盘分区篇
    Linux命令之vi篇
    JVM总结-垃圾回收算法
    JVM总结-字节码
    JVM总结-java对象的内存布局
    JVM-synchronized怎么实现的?
    JVM总结-invokedynamic
  • 原文地址:https://www.cnblogs.com/laowenBlog/p/6067637.html
Copyright © 2011-2022 走看看