博客列表 >细说PHP的变量与常量

细说PHP的变量与常量

陈强
陈强原创
2021年01月26日 23:04:16722浏览

变量

变量命名规则

  • 1.变量命名必须使用标识符$
  1. $name = 'jack';
  • 2.变量命名只能使用英文字母(a~z,A~Z)、数字(0~9)、下划线 _
  1. //合法命名
  2. $name = 'jack';
  3. $_money = 100;
  4. $title1 = '变量命名';
  5. //非法命名
  6. $user-name = 'jack';
  • 3.变量命名不能使用数字开头
  1. //非法命名
  2. $1name = 'jack';
  • 4.变量名严格区分大小写
  1. //下面的两个变量名虽然只有一个字母区分大小写,但是不是同一个变量
  2. $username = 'jack';
  3. $userName = 'jerry';
  • 5.变量名用小驼峰式写法:第二个单词开始首字母大写
  1. $userName = 'jerry';

传值赋值与引用赋值

  • 传值赋值

    将变量的值复制出一份,将新值内存空间地址赋值给新的变量名字。修改两个变量的值时还不影响

  • 引用赋值

    引用赋值相当于给变量起了一个别名,两个变量指向同一个内存空间地址

常量

  • define声明

    可以声明在运行阶段,如:if语句,函数中

  1. if(true) {
  2. define('USERNAME','jack');
  3. //const 关键字不能在运行语句中声明
  4. }
  • const声明

    只能声明在编译阶段

  1. const AGE = 28;
  2. `

数据类型转换

临时转换:不会改变原始数据的类型

  • (int) 数据转换成整型
  1. $str = '123';
  2. echo gettype((int)$str);
  3. //输出数据类型:integer
  • (string)数据转换成字符串
  1. $num = 123;
  2. echo gettype((string)$num);
  3. //输出数据类型:string
  • (array) 数据转换成数组
  1. $num = 123;
  2. echo gettype((array)$num);
  3. //输出数据类型:array
  4. echo gettype($num);//输出数据类型仍然是integer

自动转换

  • 转换成数值型的原则

    • 1.数值字符串转换为数值
    • 2.数字开头的字符串,只取数字部分,其他舍弃
    • 3.不是以数字开头的字符串转换为0
    • 4.true 转换为1;false转换为0
    • 5.null转换为0
  • 转换成字符串的原则

    • 数值转换成字符串即数值本身;

 - 布尔型的true转换成字符串’1’;false转换成空字符串’’

 - null转化成空字符串’’

  • 转换成布尔值的原则

    • 整数0,浮点数0.0和字符串’0’转换为false;

 - 空字符串’’转换成false

 - null转化成false

  • 空数组array[]转换为false

  • 其他转换为true

强制转换

  • settype()关键字
  1. $num = 3.14;
  2. $num1 = settype($num, 'int');
  3. var_dump($num);//输出int(3)

数据类型检测

  • 标量数据
关键字 说明
is_int() 是否是数值类型
is_string() 是否是字符串类型
is_bool() 是否是布尔类型
  • 复合数据
关键字 说明
is_array() 是否是数组类型
is_object() 是否是对象类型
  • 特殊类型
关键字 说明
is_null() 是否是null类型
is_resource() 是否是资源类型
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议