批改状态:合格
老师批语:写的挺好!刚开始都有这种云里雾里的感觉,不过随着新知识和新概念的增加到一定的程度,你就会恍然大悟,然后一切都是那么的简单!
<?php// 单分支(if):if(条件表达式){条件语句,当为单条的时候,可以省略大括号}// 当条件表达式为true时 执行条件语句,反之不执行$age = 25;if($age > 20 && $age < 30){echo '复合条件,执行。下面一行是简写','<hr>';}$age = 20;if ($age > 20 && $age < 30) echo '不符合条件,所以不执行';// 双分支(else从句 ):if(条件表达式){条件语句}else{条件语句}// 当条件表达式为true时 执行条件语句,当为false时 执行else中的条件语句$size = 27;if ($size >=27) :echo '27寸是我喜欢的最小尺寸';else :echo '屏幕尺寸太小了';endif;echo '<br>';$size = 19;if ($size >=27) :echo '27寸是我喜欢的显示尺寸';else :echo '屏幕尺寸太小了';endif;echo '<hr>';//三元运算符 简化 ? :$size = 19;echo $size >= 27 ? '27寸是我喜欢的显示尺寸':'屏幕尺寸太小了';echo '<hr>';// 多分支(elseif子句):必须右默认分支else(){}//if(条件表达式1){条件语句1}elseif(条件表达式2){条件语句2}...elseif(条件语句n){条件语句n}else(条件表达式){默认条件语句}$performance = 50;if ($performance >=60 && $performance <80) :echo '良';elseif ($performance >=80 && $performance <= 90) :echo '优';elseif ($performance === 100) :echo '完美';else :$performance < 60 ;echo '要加油了','<br>';endif;/*工作原理:首先对一个简单的表达式 n(通常是变量)进行一次计算。将表达式的值与结构中每个 case 的值进行比较。如果存在匹配,则执行与 case 关联的代码。代码执行后,使用 break 来阻止代码跳入下一个 case 中继续执行。default 语句用于不存在匹配(即没有 case 为真)时执行。switch (n){case label1(代表条件语句1):如果 n=label1,此处代码将执行;break;case label2(代表条件语句2):如果 n=label2,此处代码将执行;break;default:如果 n 既不等于 label1 也不等于 label2,此处代码将执行;}*/// 用switch语句来简化 多分支:$performance = 100;switch($performance):case $performance >=60 && $performance <80 :echo '良';break;case $performance >=80 && $performance <90 :echo '优';break;case $performance === 100 :echo '完美';break;default :echo '要加油了';endswitch;echo '<br>';// switch 通常用在单值判断中。$colour = 'red';switch($colour) :case $colour === 'red':echo '喜欢红色';break;case $colour === 'green':echo '喜欢绿色';break;case $colour === 'black':echo '喜欢黑色';break;default:echo '你喜欢的颜色不是红 绿 黑';endswitch;

<?php/*for 循环语法:for (初始值; 条件; 增量){要执行的代码;}初始值:主要是初始化一个变量值,用于设置一个计数器(但可以是任何在循环的开始被执行一次的代码)。条件:循环执行的限制条件。如果为 TRUE,则循环继续。如果为 FALSE,则循环结束。增量:主要用于递增计数器(但可以是任何在循环的结束被执行的代码)。上面的初始值和增量参数可为空,或者有多个表达式(用逗号分隔)。*/// 遍历数组 首选要知道有多少个元素// 1.for循环方式--只能用于纯索引数组$mountains = ['恒山','嵩山','衡山','华山','泰山'];// 数组长度 count()echo count($mountains),'<hr>';for ($i = 0; $i < count($mountains); $i++) :echo $mountains[$i],'<br>';endfor;echo '<hr>';for ($i = 0; $i < count($mountains); $i++) :// 输出拦截, break 提前终止循环if ($i > 1) break;echo $mountains[$i],'<br>';endfor;echo '<hr>';for ($i = 0; $i < count($mountains); $i++) :// 有选择性输出,跳过一部分元素continuif ($i === 3) continue;echo $mountains[$i],'<br>';endfor;echo '<hr>';// 判断型 循环: 1.入口判断型while(条件为真){执行的代码}// current(): 获取当前数组元素的值,echo current($mountains),'<hr>';while ($mountain = current($mountains)) :echo $mountain,'<br>';//next(): 当前数组指针下移next($mountains);endwhile;echo '<hr>';// 2.出口判断型do {条件语句} while(条件) 无论条件是否为true,都会先执行一遍//do{} while 没有对应的模板语法 也不常用// 指针复位reset($mountains);do {echo $mountain,'<br>';//next(): 当前数组指针下移next($mountains);} while ($mountain = current($mountains));// 输出结果少了恒山,因为第一次输出$mountain时 并没有值 ,

//返回int(-1)var_dump(10 <=> 20);//返回int(1)var_dump(10 <=> 5);//返回int(0)var_dump(10 <=> 10);
// && :两边表达式,除非全部为true,否则返回falsevar_dump((10 > 20) && (5 > 8));// ||:两边表达式只要有一个为true,则返回truevar_dump((10 < 20) || (5 > 8));var_dump(true || false);
三元运算符语法:
条件 ? 结果1 : 结果2 说明:问号前面的位置是判断的条件,如果满足条件时结果1,不满足时结果2。可以用来简化双分支
短路求值
// 如果第一个表达式(isset($username)),为false,则直接执行 else 分支,不会再去计算$username === 'admin'if ( isset($username) && $username === 'admin')echo '欢迎您';elseecho '未登录先登录','<hr>';
// 用户名:root, 不设置密码 默认密码就是root$password = sha1('123456');echo isset($password) ? $password : 'root';echo "<hr>";// isset() + 三元运算 = 变量默认值$password = '123456';unset($password);// ?? 代替isset()echo $password ?? 'root';
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号