• php的is_null+empty+isset+unset+变量赋值


    empty,isset首先都会检查变量是否存在,然后对变量值进行检测。而is_null 只是直接检查变量值,是否为null,因此如果变量未定义就会出现错误!

    以后:

    检测一个变量是否是null 用:is_null,但如果变量未定义用它检测会出错。//判断null用is_null(),如果变量未定义,则报错

    检测变量是否定义可以用:isset  ,但是如果一个变量值是:null, 则它会返回false . //判断变量是否定义,用isset,如果变量值是null则返回false

    empty 与 isset区别 

      1、对待$c = null,的处理上 isset 返回false,empty 返回true

     unset是直接删除变量

    $a="hello";
    $b= $a;
    // echo $b.'sss'.$a; // echo hello
    unset($b);
    echo $b;  //unset 是去掉变量定义,所以输出会报错

    变量相互赋值:

      

    //变量相互赋值
    $a="hello";
    $b= $a;
    echo $b.'sss'.$a; // echo hello
    $a = "world";
    echo $b.$a;   //输出 hello world 说明变量相互赋值是 拷贝一个副本
    unset($b);
    echo $b;  //unset 是去掉变量定义,所以输出会报错
    
    //对象相互赋值
    class A{
        public $num=100; 
    }
    $a = new A();
    $b = $a; //指向同一个对象
    $a->num=200;
    echo $b->num;  //输出200

      综述:变量相互赋值,是拷贝副本。如果变量是对象,相互赋值是指向同一个对象

    相关链接:

      http://www.cnblogs.com/chengmo/archive/2010/10/18/1854258.html

  • 相关阅读:
    线性可分支持向量机
    谈对牛顿法的理解
    最大熵模型学习笔记
    Maven --- <distributionManagement>标签
    poi-word导出,导出多图片到word
    poi-excel导入导出
    ApplicationContextInitializer接口
    springboot伪静态
    springboot集成邮件服务
    多文件上传demo
  • 原文地址:https://www.cnblogs.com/zhongyuan/p/4380413.html
Copyright © 2020-2023  润新知