php系统常量和运算符
1.系统常量。
- 开头和结尾都有两个下划线, 按这种格式的都是系统的预定义常量
echo PHP_OS; // 系统名称
echo PHP_VERSION;// 当前php的版本
echo __LINE__; // 在当前文件中的第几行
echo __LINE__; // 在当前文件中的第几行
echo __FILE__; // 当前文件地址
echo __DIR__; // 当前文件的目录地址
/**
* __CLASS__ 对象的名字
* __METHOD__ 对象里的的方法的名字
* __NAMESPACE__ 命名空间
* __FUNCTION__ 函数的名字
*/
- define('常量名','常量值'),自定义常量,常量值可以是数组,变量,对象等。
- const '常量名' = '常量值',自定义常量。。
- 常量一经定义无法更改,知道程序运行结束。
- defined('常量名'),检测常量是否存在,是返回true,否则false。
- get_defined_constants():返回的是数组,包含已定义的常量,包括系统预定义常亮。
2.算术运算符
运算符有3种类型
- 一元运算符: 只有一个值进行运算 -10;
- 二元运算符: + * /, 必须要有两个值来进行运算
- 三元运算符: ?: 它一般用来根据一个表达式在另两个表达式中选择一个.
![]()
注意运算符的结合性。下图排名越前,则该运算符优先级越高。

ps:运算符优先级和结合性仅确定表达式的分组方式,不指定计算顺序。PHP(在一般情况下)不指定表达式的求值顺序,应该避免采用特定求值顺序的代码,因为行为可能在不同的PHP版本之间或取决于周围的代码而改变。
3.赋值运算符

4.递增/递减运算符
执行规律
-
前置加加: 先加加,在输出
-
后置加加: 先输出,在加加

ps:一条语句不应当同时 ①取变量值 ②对变量产生副作用(更改、赋值等)。
只有极为简单的情况下可以容忍,例如 $r = $a++;。但这个实践仍然不良,最好改掉。
5.PHP 比较运算符

- 数字之间比较
var_dump(2 > 1);
var_dump(1 > 1);
var_dump(2 < 1);
var_dump(2 < 2);
运算最终会表达为一个布尔值, 成立则为真, 不成立则为假。
-
字符比较
var_dump('A' < 'B');//true
先将字符变成 ascii, 然后在进行数字的大小判断,大写A在ASCII编码中为65,B为66,65<66,所以返回true
- 等于
如果字符串是数字或数字开头,开头的数字被自动转成数字来判断。
只要数字大小一样, 就能够判断成功, 不管类型。
不等于(!=)同理。
var_dump(10 == 10); // true
var_dump(10 == 20); // false
var_dump(10 == '10'); // true
var_dump(10.0 == '10'); // true
var_dump(10 == '10内容'); // true
全等于/全不等于
在不等于的基础上增加了类型判断。
var_dump(10 !== 10); // false
var_dump('10' !== 10); // true
var_dump(10 !== 10.0); // true
除了数值大小一样,数据类型也要求一致,否则返false
php_0306_day4


浙公网安备 33010602011771号