常量和运算符
php 常量
使用define定义常量,该函数返回bool类型值。
<?php
$str = define("LOCALHOST","http://localhost");
echo $str;//布尔
echo "<br />";
echo LOCALHOST;
?>
使用const关键字定义常量
<?php
const LOCALHOST = "http://localhost:80";
echo LOCALHOST;
?>
使用常量
常量值得使用方式有两种,一种方式是运用常量直接获取;另一种方式是用constant()函数获取。两种方式的效果相同,但是constant()函数可以获取动态常量,使用起来也更为灵活,方便。constant()函数的语法格式如下:
mixed constant (string name)
其中name为需要获取或存储的常量名称。若获取或存储常量成功,则返回常量值,否则显示错误信息。
预定义常量
1、__FILE__ 默认常量,是指PHP程序文件名及路径;
2、__LINE__ 默认常量,是指PHP程序的行数;
3、__CLASS__: 类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
4、__METHOD__: 类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。
5、PHP_VERSION 内建常量,是指PHP程序的版本;
6、PHP_OS 内建常量,是指PHP解析器的操作系统的名称;
7、TRUE 是指真值(true);
8、FALSE 是指假指(false);
9、NULL 是指空值(null);
10、E_ERROR 是指最近的错误之处;
11、E_WARNING 是指最近的警告之处;
12、E_PARSE 是指解析语法有潜在的问题之处;
13、E_NOTICE 是指发生不同寻常的提示,但不一定是错误处;
注意:“__FILE__” “_LINE__ ” “__CLASS__” “__METHOD__” 中的“__”是指两个下划线,不是指一个下划线。
运算符
运算符 | 名称 | 描述 | 实例 | 结果 |
---|---|---|---|---|
x + y | 加 | x 和 y 的和 | 2 + 2 | 4 |
x – y | 减 | x 和 y 的差 | 5 – 2 | 3 |
x * y | 乘 | x 和 y 的积 | 5 * 2 | 10 |
x / y | 除 | x 和 y 的商 | 15 / 5 | 3 |
x % y | 模(除法的余数) | x 除以 y 的余数 | 5 % 2 10 % 8 10 % 2 | 1 2 0 |
– x | 取反 | x 取反 | <?php $x =2; echo -$x; ?> | -2 |
a . b | 并置 | 连接两个字符串 | “Hi” . “Ha” | HiHa |
赋值运算符
运算符 | 等同于 | 描述 |
---|---|---|
x = y | x = y | 左操作数被设置为右侧表达式的值 |
x += y | x = x + y | 加 |
x -= y | x = x – y | 减 |
x *= y | x = x * y | 乘 |
x /= y | x = x / y | 除 |
x %= y | x = x % y | 模(除法的余数) |
a .= b | a = a . b | 连接两个字符串 |
PHP 递增/递减运算符
运算符 | 名称 | 描述 |
---|---|---|
++ x | 预递增 | x 加 1,然后返回 x |
x ++ | 后递增 | 返回 x,然后 x 加 1 |
— x | 预递减 | x 减 1,然后返回 x |
x — | 后递减 | 返回 x,然后 x 减 1 |
PHP 比较运算符
比较操作符可以让您比较两个值:
运算符 | 名称 | 描述 | 实例 |
---|---|---|---|
x == y | 等于 | 如果 x 等于 y,则返回 true | 5==8 返回 false |
x === y | 绝对等于 | 如果 x 等于 y,且它们类型相同,则返回 true | 5===”5″ 返回 false |
x != y | 不等于 | 如果 x 不等于 y,则返回 true | 5!=8 返回 true |
x <> y | 不等于 | 如果 x 不等于 y,则返回 true | 5<>8 返回 true |
x !== y | 绝对不等于 | 如果 x 不等于 y,或它们类型不相同,则返回 true | 5!==”5″ 返回 true |
x > y | 大于 | 如果 x 大于 y,则返回 true | 5>8 返回 false |
x < y | 小于 | 如果 x 小于 y,则返回 true | 5<8 返回 true |
x >= y | 大于等于 | 如果 x 大于或者等于 y,则返回 true | 5>=8 返回 false |
x <= y | 小于等于 | 如果 x 小于或者等于 y,则返回 true | 5<=8 返回 true |
$a??$b??$c | 空合并符 | 返回从左到右第一个不为null的变量 | null??null??3返回3 |
$a<=>$b | 组合比较符 | 若a<b则返回-1 若a等于b则返回0 若a>b则返回1 | 1<=>2 返回-1 |
<?php
echo null??null??3;//输入3
echo "<br />";
var_dump(null??null??null);//输入null
?>
PHP 逻辑运算符
运算符 | 名称 | 描述 | 实例 |
---|---|---|---|
x and y | 与 | 如果 x 和 y 都为 true,则返回 true | x=6 y=3 (x < 10 and y > 1) 返回 true |
x or y | 或 | 如果 x 和 y 至少有一个为 true,则返回 true | x=6 y=3 (x==6 or y==5) 返回 true |
x xor y | 异或 | 如果 x 和 y 有且仅有一个为 true,则返回 true | x=6 y=3 (x==6 xor y==3) 返回 false |
x && y | 与 | 如果 x 和 y 都为 true,则返回 true | x=6 y=3 (x < 10 && y > 1) 返回 true |
x || y | 或 | 如果 x 和 y 至少有一个为 true,则返回 true | x=6 y=3 (x==5 || y==5) 返回 false |
! x | 非 | 如果 x 不为 true,则返回 true | x=6 y=3 !(x==y) 返回 true |
PHP 数组运算符
运算符 | 名称 | 描述 |
---|---|---|
x + y | 集合 | x 和 y 的集合 |
x == y | 相等 | 如果 x 和 y 具有相同的键/值对,则返回 true |
x === y | 恒等 | 如果 x 和 y 具有相同的键/值对,且顺序相同类型相同,则返回 true |
x != y | 不相等 | 如果 x 不等于 y,则返回 true |
x <> y | 不相等 | 如果 x 不等于 y,则返回 true |
x !== y | 不恒等 | 如果 x 不等于 y,则返回 true |
运算符优先级
下表按照优先级从高到低列出了运算符。同一行中的运算符具有相同优先级,此时它们的结合方向决定求值顺序。
说明:左 = 从左到右,右 = 从右到左。
结合方向 | 运算符 | 附加信息 |
---|---|---|
无 | clone new | clone 和 new |
左 | [ | array() |
右 | ++ — ~ (int) (float) (string) (array) (object) (bool) @ | 类型和递增/递减 |
无 | instanceof | 类型 |
右 | ! | 逻辑运算符 |
左 | * / % | 算术运算符 |
左 | + – . | 算术运算符和字符串运算符 |
左 | << >> | 位运算符 |
无 | == != === !== <> | 比较运算符 |
左 | & | 位运算符和引用 |
左 | ^ | 位运算符 |
左 | | | 位运算符 |
左 | && | 逻辑运算符 |
左 | || | 逻辑运算符 |
左 | ? : | 三元运算符 |
右 | = += -= *= /= .= %= &= |= ^= <<= >>= => | 赋值运算符 |
左 | and | 逻辑运算符 |
左 | xor | 逻辑运算符 |
左 | or | 逻辑运算符 |
左 | , | 多处用到 |
PHP其他关键字
在php中,eixt()函数和dir()函数的作用和用法完全相同。这两个函数可以设置参数。如果参数为一个字符串,则函数会在终止脚本的运行前输入字符串;如果参数为一个整数,则这个值会被用作退出状态。在参数值为整数时,取值范围为0-254,0表示成功结束,255表示退出状态,PHP保留,不会被使用,退出状态通常用在PHP命令模式中。
PHP函数
语法
<?php
function functionName()
{
// 要执行的代码
}
?>