zoukankan      html  css  js  c++  java
  • 关于php变量的赋值和引用的区别

    刚开始学习php,发现有些地方和js语法不同,所以记录下来。

    这篇文章是总结php中变量赋值和引用的区别。

    我们知道,js中,原始类型的赋值,是将值直接复制给变量;引用类型的赋值,是将内存地址复制给变量。至于这两者的区别,我就不讲了。

    这里,我只总结哪些是直接赋值,哪些是复制的内存地址。

    1、原始类型 -- 直接赋值

    $name1 = 'sky';
    $name2 = $name1;
    $name2 = 'fly';
    echo $name1.' '.$name2;     //sky fly

     

    2、数组array -- 直接赋值

    $arr1 = array(0, 1, 2, 3);
    $arr2 = $arr1;
    $arr2[0] = 6;
    echo $arr1[0].' '.$arr2[0]; //0 6

     

    3、class类 -- 内存地址

    class Person{
        public $name = 'sky';
        public $age = 14;
    }
    $person1 = new Person();
    $person2 = $person1;
    $person2->name = 'moon';
    echo $person1->name.' '.$person2->name;    //moon moon

     

    然后,php中规定,使用“&”符号,可以将普通赋值改成内存地址,看下面代码

    $name1 = 'sky';
    $name2 = &$name1;  //&符号的使用
    $name2 = 'fly';
    echo $name1.' '.$name2;     //fly fly
  • 相关阅读:
    CF1082E Increasing Frequency
    CF1083B The Fair Nut and String
    week2
    CF1082G Petya and Graph
    后缀数组学习笔记
    单纯形法
    验证rbd的缓存是否开启
    如何删除一台OSD主机
    Mon失效处理方法
    查询osd上的pg数
  • 原文地址:https://www.cnblogs.com/minigrasshopper/p/7737466.html
Copyright © 2011-2022 走看看