zoukankan      html  css  js  c++  java
  • php 数据类型

    php跟.net一样分为:值类型和引用类型两种。

    值类型传递时候是按值传递,引用类型则是按引用传递。

    值类型一般就是直接定义的数据,如:$user,$id这样直接定义的。

    引用类型则是通过new 实例化的对象,如:$user = new user();

    在函数调用中如果传递的参数为值类型,改变原来数据的值是不会改变的,例如:

    <?php
    function increment($tmp)
    {
        
    $tmp = $tmp +1;
    }
    $i = 4;
    increment(
    $i)
    print $i;
    ?>

    输出结果:4

    如果你想改变值类型的值,可以使用&符号,它的用法跟.net的ref 和out关键字。

    <?php
    function increment(&$tmp)
    {
        
    $tmp = $tmp +1;
    }
    $i = 4;
    increment(
    $i)
    print $i;
    ?>

    输出结果:5。

    而按引用类型传递参数时,传递的是对象的指针,在函数中改变的是参数的本身的值,所以不需要使用&符号

    Code

    输出结果:23

    这里传进去的是一个person的对象$p,这跟上面的值传递不同,上面值传递是传进$i的一个副本

    这里如果把$p->age传进去的话也是值传递,同样无法改变age的值。

    函数前面加的&的用法还不是很懂,希望高手指点一二。。谢谢。。

  • 相关阅读:
    合并ts文件
    Typora
    Typora
    OCMock 3 参考
    git 修改上次提交信息 与 撤销此操作.
    git使用技巧
    python获取软件安装列表2222
    【Dojo 1.x】笔记6 配置对象dojoConfig的用处和真身所在
    【Dojo 1.x】笔记目录
    【Dojo 1.x】笔记5 使用本地引用
  • 原文地址:https://www.cnblogs.com/coolkiss/p/1500830.html
Copyright © 2011-2022 走看看