一:运算符
1:比较运算符(用于比较两个值(数字或字符串))
运算符 |
名称 |
例子 |
结果 |
> |
大于 |
$x > $y |
如果 $x 大于 $y,则返回 true |
< |
小于 |
$x > $y |
如果 $x 小于 $y,则返回 true |
== |
等于 |
$x == $y |
如果 $x 等于 $y,则返回 true |
=== |
全等(完全相同) |
$x === $y |
如果 $x 等于 $y,且它们类型相同,则返回 true |
2:逻辑运算符
&&:二边表达式除非全部为true,否则返回false
//实例如下:
var_dump((10 > 20) && (5 > 8));
||: 二边表达式只要有一个为true,则返回true
//实例如下:
var_dump((10 < 20) || (5 > 8));
var_dump(true || false);
3:短路求值
<?php
// 如果第一个表达式(isset($username)) 为false, 则直接执行else分支,不会再去计算" $username === 'admin'"
//实例如下:
$username = 'huangjiancong';
if ($username && $username === 'admin')
echo '欢迎您';
else
echo '您未登录,请先登录';
?>
4:三元运算符
//另一个条件运算符是"?:"(或三元)运算符 。
// 用三元运算符来简单双分支
// 三元: 是指有三个表达式, 意味要有二个操作符.
//实例如下:
$price = 1000;
echo $price > 1500 ? '太贵了' : '太便宜了';
// NULL 合并运算符 ??,实例如下:
<?php
$password = 123456;
echo $password ?? 'root';
?>
二:分支控制与模板语法
1:单分支 语法:if (条件) {条件成立时要执行的代码;}
//实例如下:
<?php
//if 语句用于在指定条件为 true 时执行代码。
$age = 35;
if ($age > 30) {
echo '我是大哥';
}
// 可用模板语法代替
// 用法:将起始大括号用冒号代替,将结束大括号用特殊关键字endif代替
if ($age > 30) :echo '我是大哥';endif;
?>
2:双分支 语法:if (条件){条件成立时执行的代码;}else{条件不成立时执行的代码;}
<?php
//在条件成立时执行一块代码,条件不成立时执行另一块代码,请使用 if....else 语句。
$age = 35;
if ($age > 40) {
echo '我是大哥';
}
else {
echo '我是二哥';
}
//模板语法:
if ($age > 40) :echo '我是大哥';else :echo '我是二哥';endif;+
?>
3:多分支
<?php
//在若干条件之一成立时执行一个代码块,请使用 if....elseif...else 语句。.
$time = 18;
if ($time < 8) {
echo '早上好';
}
elseif ($time < 12) {
echo '中午好';
}
elseif ($time <16) {
echo '下午好';
else {
echo '晚上好';
}
//模板语法:
$time = 18;
if ($time < 8) :
echo '早上好';
elseif ($time < 12) :
echo '中午好';
elseif ($time < 16) :
echo '下午好';
else :
echo '晚上好';
endif;
?>
4:swith:用来简化多分支
<?php
//switch:通常用在单值判断中
//语法:
// switch (表达式) {
// case 条件1:
// 分支语句...
// break;
// case ...
// default:
// ....
// }
$time = 18;
switch ($time) {
case $time < 8;
echo '早上好';
break;
case $time < 12;
echo '中午好';
break;
case $time < 16;
echo '下午好';
break;
default:
echo '晚上好';
}
//模板语法:
$time = 18;
switch ($time) :
case $time < 8;
echo '早上好';
break;
case $time < 12;
echo '中午好';
break;
case $time < 16;
echo '下午好';
break;
default:
echo '晚上好';
endswitch;
?>
三:循环控制与模板语法
1.判断型循环:入口判断型:while(条件) {…}
<?php
$cities = ['福州', '莆田', '泉港', '惠安', '泉州'];
//current指的是获取当成数组元素的值
while ($city = current($cities)){
echo $city,'<br>';
next($cities);//前移指针
}
reset($cities);//数组指针复位,重新指向第一个
while ($city = current($cities)){
echo $city,'<br>';
next($cities);
}
//模板语法:
reset($cities);//数组指针复位,重新指向第一个
while ($city = current($cities)) :
echo $city,'<br>';
next($cities);
endwhile;
?>
2.判断型循环: 出口判断型 do {…} while(条件)
<?php
$cities = ['福州', '莆田', '泉港', '惠安', '泉州'];
do {
echo $city,'<br>';
next($cities);
}while ($city = current($cities));
// do - while 没有对应的模板语法 基本不用
?>
3. 计数型循环: for (循环变量的初始化; 循环条件; 更新循环条件){….}
<?php
$cities = ['福州', '莆田', '泉港', '惠安', '泉州'];
//count指的是函数返回数组中元素的数目
//$a:数组元素的索引,默认从0开始
for ($a = 0; $a < count($cities);$a++){
echo $cities[$a], '<br>';
}
//模板语法:
for ($a = 0; $a < count($cities);$a++):
echo $cities[$a], '<br>';
endfor;
?>