Day2:常量、运算符
一、
1、小工具:
(1)is_set(变量名):判断一个变量是否存在,存在并且不是null时返回true
注:如果测试一个值为null的变量则返回false
(2)empty(变量名):查看变量是否为空
什么情况被认为是空:0 “” “0” null false array() 0.00
2、注:变量名严格区分大小写
3、引用变量:相当于给一个变量起了一个别名
(1)&为取址符号
(2)注:
只有变量才能引用
引用一个变量后,一个发生变化,另一个也发生变化
引用传值后unset掉一个变量的时候只是解除了引用关系,如果unset掉的变量被另外一个变量引用,那么这个unset掉的变量不会被释放内存
4、常量:定义赋值后,不可以再次修改和销毁的量成为常量
(1)define("常量名",'值')
注意:
常量名区分大小写,一般声明时采用大写字母
常量不存在就会当字符串来处理,但是这样的效率比较慢(8倍)
常量名前不加$
不能被unset释放,否则将会报错
可以使用常量来进行运算
常量可以直接使用
(2)系统常量
PHP_VERSION:php程序的版本是多少
PHP_OS:php解析器的操作系统名称
(3)魔术常量:他们会随着常量在代码中位置的改变而改变
__LINE__:当前代码所在的行号
__FILE__:当前脚本文件所在的绝对路径
__DIR__:当前脚本所在的目录的绝对路径
(4)判断一个常量是否存在
defined(常量名):如果常量存在就返回true,否则,返回false
5、运算符
(1)算数运算符:
+
-
*
/
%
注:
操作数中有字符串的话需要先将字符串转换成整数或浮点数
求模结果的正或者负完全取决于第一个数
如果第一个数小于第二个数,那么求模的结果是第一个数
++:累加1,一元运算符,自增,可以放在运算符前面,也可以放在运算符后面,只对本行有效
放在运算符后面,先用后加
放在运算符前面,先加后用
布尔型不参加++ --运算
(2)赋值运算符
表达式:将数据用运算符按照对应的规则连接起来
=:赋值运算符
+=: $a+=1 $a=$a+1
-=:
*=:
/=:
%=:
.:字符串连接符
注意:
直接连接时只能连接变量、常量、字符串
连接变量可以是任何的标量
整数和浮点数连接时,将会原样连接
.=:
(3)比较运算符
结果:布尔型的值
>
<
>=
<=
==
注意:
一个等号是赋值,两个等号是判断是否等于
php是弱类型语言可以让不同类型的值进行比较,自动转换为相同类型的值进行比较
===:全等于
注意:不仅内容相等而且类型也必须相等才返回true
!=:不等于
!==:不全等于
(4)逻辑运算符
!:取反,操作数为true时,返回false,否则返回true
&&:逻辑与,两边操作数都为true时返回true,否则返回false,注:当第一个表达式为false的时候,就不检查第二个表达式了
||:逻辑或,两边的操作数都为false的时候返回false,否则返回true,注:如果第一个表达式返回true的时候,就不检查第二个表达式
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<?php $year=2001; if($year%4==0&&$year%100!=0||$year%400==0) echo true; else echo false; ?>