一、运算符
1.1 算术运算符
运算 | 描述 | 举例 |
+ | 加 | $a+$b |
- | 减,负数功能 | $a-$b |
* | 乘 | $a*$b |
/ | 除 | $a/$b |
% | 取余 | $a%$b |
<?php
$s1 = 3;
$s2 = 5;
$res1 = $s1+$s2;
$res2 = $s1-$s2;
$res3 = $s1*$s2;
$res4 = $s1/$s2;
$res5 = $s1%$s2;
echo $res1."<br>";
echo "${res2}<br>";
echo "$res3 <br>";
echo "$res4";
echo "<br>";
echo $res5;
?>
1.2 赋值运算符
运算符 | 描述 | 举例 |
= | 赋值 | $a=10 |
+= | 加等 | $a+=$b相当于$a=$a+$b |
-= | 减等 | $a-=$b相当于$a=$a-$b |
*= | 乘等+++++++++++++++++++++++ | $a*=$b相当于$a=$a*$b |
/= | 除等 | $a/=$b相当于$a=$a/$b |
%= | 余等 | $a%=%b相当于$a=$a%$b |
特殊操作:
$a++ 意思就是自加1
$a-- 意思是自减1
1.3 比较运算符
运算符 | 描述 | 用法 |
== | 相等 | $a==$b |
=== | 全等,值相等,类型一致 | $a===$b |
!= | 不等(只要值不等,就为真) | $!=$b |
!== | 不全等(值不相等或类型不相等) | $a!==$b |
<> | 不等 | $a<>$b |
> | 大于 | $a>$b |
< | 小于 | $<$b |
>= | 大于等于 | $a>=$b |
<= | 小于等于 | $<=$b |
注意:== 其实在进行判断的时候,会自动进行数据类型的转换,然后比较的是转换之后的结果
重要案例:==会自动进行数据类型转换
<?php
if(33 =="33 haha")
{
echo "相等";
}
else
{
echo "不相等";
}
#结果相等
?>
== 在进行判断的时候会自动进行类型转换,也就是说在判断的时候,仅仅会比较数据前面的一部分内容,这样就会导致安全问题
注意:
如果 == 两边的数据类型不一样的话,那么会将字符串类型转换为整数类型
如果 == 两边的数据类型一样的话,例如都是字符串,或者整数类型,那么就不会进行类型转换了
<?
if("33 hoho" == "33 haha")
{
echo "相等";
}
else
{
echo "不相等";
}
# 结果是不相等
?>
总结:
如果比较的双方有一个是整形的,那么双方都强制转换为整形,然后作对比
如果两边都是字符串,那么直接比较字符串中的内容
1.4 逻辑运算符
&& | 逻辑与,多个条件需要同时成立 |
|| | 逻辑或,多个条件有任意一个 |
! | 逻辑非,原条件不成立,则最终成立 |
案例:判断用户是root,或者年龄大于18,那么就提示登录成功,否则提示登录失败
<?php
$uname = $_GET['username'];
$upass = $_GET['password'];
$uage = (int)$_GET['age'];
if($unama === "root" || $uage>18)
{
echo "登录成功";
}
else
{
echo "登录失败";
}
?>
二、流控制
2.1 判断语句
单分支格式
if(条件)
{
当条件为真,执行这里
}
双分支格式
if(条件)
{
当条件为真,执行这里
}
else
{
当条件为假,执行这里
}
多分支
if(条件1)
{
当条件1为真,执行这里
}
else if(条件2)
{
当条件2为真,执行这里
}
else if(条件3)
{
当条件3为真,执行这里
}
....
....
....
else if(条件n)
{
当条件n为真,执行这里
}
else
{
当以上所有条件都不满足,执行这里
}
2.2 for循环
for(变量初始值;判断变量是否满足条件;修正变量的值)
{
当判断条件成立时,执行这里的代码
}
2.3while循环
定义变量初始值
while(变量值是否满足条件)
{
当判断条件成立的时候,执行这里的代码
}
2.4 循环控制
break:当循环执行到break的时候,整个循环结束
continue:当循环直行到continue的时候,当前这一轮循环结束,直接开始下一次循环
案例1:当num等于3的时候程序结束
<?php
$num=1;
while($num<=5)
{
echo "第 ${num} 次循环开始<br>";
echo "1<br>";
echo "2<br>";
if($num === 3){
break;
}
echo "3<br>";
echo "第 ${num} 次循环结束<br>";
$num+=1;
}
?>
案例2:当num等于3的时候跳过本次循环
<?php
$num=0;
while($num<=5)
{
$num+=1;
echo "第 ${num} 次循环开始<br>";
echo "1<br>";
echo "2<br>";
if($num === 3){
continue;
}
echo "3<br>";
echo "第 ${num} 次循环结束<br>";
}
?>