<?php
/* 算数运算符
+ :加法运算符
- :减法运算符
* :乘法运算符
/ :除法运算符
% :取余运算符
++ :累加运算符
-- :累减运算符
*/
$a = 13;
$b = 2;
echo $a."+".$b."=".($a+$b)."<br/>"; //使用加法运算符
echo $a."-".$b."=".($a-$b)."<br/>"; //使用减法运算符
echo $a."*".$b."=".($a*$b)."<br/>"; //使用乘法运算符
echo $a."/".$b."=".($a/$b)."<br/>"; //使用除法运算符
echo $a."%".$b."=".($a%$b)."<br/>"; //使用求余运算符
echo $a."++"."\t"."=".($a++)."<br/>"; //使用累加运算符
echo $a."--"."\t"."=".($a--)."<br/>"; //使用累减运算符
echo "<br/>";
//字符串运算符
$c = "把两个字符串";
$d = 10.25;
echo $c."连接起来,".$d."天。"; //用 "." 把字符串连接后输出
echo "<br/>";
/* 赋值运算符
= :将又边的值赋给左边的变量
+= :将左边的值加上右边的值赋给左边的变量
-= :将左边的值减去右边的值赋给左边的变量
*= :将左边的值乘以右边的值赋给左边的变量
/= :将左边的值除以右边的值赋给左边的变量
.= :将左边的字符串连接到右边
%= :将左边的值对右边的值取余数赋给左边的变量
*/
$e = 5;
$f = 20;
echo $e.=$f; echo "<br/>";
echo "<br/>";
/*比较运算符
== :相等
!= :不相等
> :大于
< :小于
>= :大于等于
<= :小于等于
=== :精确等于(类型也相同)
!== :不精确等于(可能数值不同,也可能类型不同)
*/
echo "<br/>";
/*逻辑运算符
&& :逻辑和
AND :逻辑和
|| :逻辑或
OR :逻辑或
! :逻辑否
NOT :逻辑否
XOR :逻辑异或
*/
$a = true;
$b = false;
echo '$a && $b :'; echo var_dump($a && $b)."<br/>";
echo '$a || $b :'; echo var_dump($a || $b)."<br/>";
echo '!$a :'; echo var_dump($a && $b)."<br/>";
echo "<br/>";
/* 按位运算符(把整数按“位”的单位来进行处理)
& :按位和(例如 $a&$b 表示对应位数都为1,则结果改位为1)
| :按位或(例如 $a|$b 表示对应位数有一个为1,则结果改位为1)
^ :按位异或(例如 $a^$b ,表示对应位数不同,则结果改位为1)
~ :按位取反(例如 ~$b ,表示对应位数为0的改为1,为1的改为0)
<< :左移(例如 $a<<$b ,表示将$a在内存中二进制数据向左移动$b位数,右边移空补0)
>> :右移(例如 $a>>$b ,表示将$a在内存中二进制数据向右移动$b位数,左边移空补0)
*/
$a = 7; // 7的二进制代码是111
$b = 4; // 4的二进制代码是100
echo '$a & $b = '.($a & $b)."<br/>"; //运行结果为二进制100,即4
echo '$a | $b = '.($a | $b)."<br/>"; //运行结果为二进制111,即7
echo '$a ^ $b = '.($a ^ $b)."<br/>"; //运行结果为二进制011,即3
echo "<br/>";
//错误控制运算符
$err = @(20/0)."<br/>"; //如果想屏蔽这个错误,在表达式前面加上“@”
echo "<br/>";
//三元运算符
// (expr1)?(expr2):(expr3) 如果expr1成立,则执行expr2,否则执行expr3
$a = 5;
$b = 6;
echo ($a>$b) ? "大于成立" : "大于不成立"."<br/>"; //大于不成立
echo ($a<$b) ? "小于成立" : "小于不成立"."<br/>"; //小于成立
/* 运算符的优先级和结合规则
*加减乘除的先后顺序同数学运算中的完全一致
*对于括号,则先括号内再括号外
*对于赋值,则由右向左运行,即值依次从右边向左边的变量进行赋值
*/