版权声明:本文为博主原创文章,仅供学习交流,未经博主允许不得转载。 https://blog.csdn.net/zjy_android_blog/article/details/82229057
目录
一、条件判断if
// if结构语法
// 结构1,单分支
if(条件语句){
// code...
}
// 或者 结构2,双分支
if(条件语句){
// code...
}else{
// code...
}
// 或者 结构3,多分支,else if 可已有多个
if(条件语句1){
// code...
}else if(条件语句2){
// code...
}elseif(条件语句3){
// code... elseif 与else if 是一样的效果
}else{
// code...
}
接下来就是例子
<?php
if(true){
echo '真1';
}
echo "<hr>";
if(true){
echo "真2";
}else{
echo "假";
}
echo "<hr>";
if(false){
echo "假";
}elseif(true){
echo "真3";
}else{
echo "其他";
}
?>
// 判断数值是否为偶数
<form action="" method='post'>
<label for='num'>请输入</label>
<input type="text" name="num" placeholder="请输入合法数字">
<input type="submit" value="提交">
</form>
<?php
if(isset($_POST['num'])&&$_POST['num']!==""){
$num = $_POST['num'];
if($num%2==0){
echo $num."是偶数。";
}else{
echo $num."是奇数。";
}
}else{
echo "请输入合法数字";
}
?>
二、switch分支语句
switch 语句类似于具有同一个表达式的一系列 if 语句。很多场合下需要把同一个变量(或表达式)与很多不同的值比较,并根据它等于哪个值来执行不同的代码。switch进行的是松散比较(类似==操作,switch进行的是值的对比,不进行数值的类型对比)。switch语法结构:
switch (条件表达式) {
case 值1:
// code...
break;
case 值2:
// code...
break;
// ... 多个case
default:
// code
break;
}
switch实例操作:
<?php
// 1.如果不给与每个case break语句,则会进行下一个case的判断
switch (true) {
case 1:
echo '执行了 case 1';
echo '<br>';
case 2:
echo '执行了 case 2';
echo '<br>';
}
// 以上输出:
// 执行了 case 1
// 执行了 case 2
// 2.switch的比较是否包含了类型比较?
switch (2) {
case true:
echo '执行了 case true';
echo '<hr>';
case 2:
echo '执行了 case 2';
echo '<hr>';
}
// 以上的输出结果:
// 执行了 case true
// 执行了 case 2
// 此结果说明 switch不进行类型的比较,甚至会将表达式的结果值进行类型的自动转换,
// 在进行case true的比较时,表达式结果值2被转换成了布尔值true
?>
<!-- 实例 -->
<form action='' method='post'>
<datalist id='school'>
<option value='中国传媒大学'>中国传媒大学1</option>
<option value='北京大学'>北京大学</option>
<option value='中山大学'>中山大学</option>
<option value='社会大学'>社会大学</option>
</datalist>
<label for='school'>我的志愿大学:</label>
<input type='text' name='school' list='school'>
<input type='submit' value='提交'>
</form>
<?php
if (isset($_POST['school']) && $_POST['school'] != '') {
$school = $_POST['school'];
switch ($school) {
case '中国传媒大学':
echo $school;
break;
case '北京大学':
echo $school;
break;
case '中山大学':
echo $school;
break;
case '社会大学':
echo $school;
break;
default:
echo $school . '是新的学校?';
break;
}
}
?>
三、循环语句for
for循环语法:
for (循环初始变量; 条件表达式; 修改循环的控制变量) {
// 循环体语句
}
for实例操作:
<?php
// 1.最简单实例
for ($i = 0; $i < 3; $i++) {
echo $i.'<br>';// 循环体
}
// 0
// 1
// 2
// 2.for循环实现表格打印
echo <<<'FORM'
<form action='' method='post'>
<label>请输入表格的行数和列数</label><br>
<input type='number' name='row'>行
<input type='number' name='col'>列
<input type='submit' value='提交'>
</form>
FORM;
$r = isset($_POST['row'])?$_POST['row']:0;
$c = isset($_POST['col'])?$_POST['col']:0;
echo '<table border="1" style="border-collapse:collapse;">';
for($row=0;$row<$r;$row++){
echo '<tr>';
for($col=0;$col<$c;$col++){
echo '<td style="padding:10px;">'.$row.$col.'</td>';
}
echo '</tr>';
}
echo '</table>';
?>
输入3行4列,表格打印如下:
四、循环语句while
while语句是包含了判断的循环,我们可以将该语句看作一个可以循环执行的if判断。当条件表达式的判定结果,为真则执行循环体,为假则不执行,结束循环。(当我们不知道循环的次数时可以使用该循环实现)
while的语法结构如下:
while(条件表达式){
// 循环体
}
注意:
1.循环初始条件在while外
2.条件表达式结果为true时执行循环体
3.循环体内必须有更新循环条件的语句,否则会进入死循环
while实例操作:
<?php
// while循环实现表格打印
echo <<<'FORM'
<form action='' method='post'>
<label>请输入表格的行数和列数</label><br>
<input type='number' name='row'>行
<input type='number' name='col'>列
<input type='submit' value='提交'>
</form>
FORM;
$r = isset($_POST['row'])?$_POST['row']:0;
$c = isset($_POST['col'])?$_POST['col']:0;
echo '<table border="1" style="border-collapse:collapse;">';
$row=0;
while($row<$r){
echo '<tr>';
$col=0;
while($col<$c){
echo '<td style="padding:10px;">'.$row.$col.'</td>';
$col++;
}
echo '</tr>';
$row++;
}
echo '</table>';
?>
结果同for循环实现的结果相似。
五、循环语句do-while
do-while语句是包含了判断的循环,与while非常相相似;
do {
// 循环体
} while (条件表达式)
注意:
1.不检测条件,先执行一次循环体;
2.条件表达式结果为true时执行循环体
3.循环体内必须有更新循环条件的语句,否则会进入死循环
4.与while不同,至少要执行一次循环体
do-while实例操作
<?php
// while循环实现表格打印
echo <<<'FORM'
<form action='' method='post'>
<label>请输入表格的行数和列数</label><br>
<input type='number' name='row'>行
<input type='number' name='col'>列
<input type='submit' value='提交'>
</form>
FORM;
$r = isset($_POST['row'])?$_POST['row']:0;
$c = isset($_POST['col'])?$_POST['col']:0;
echo '<table border="1" style="border-collapse:collapse;">';
$row=0;
do{
echo '<tr>';
$col=0;
do{
echo '<td style="padding:10px;">'.$row.$col.'</td>';
$col++;
}while($col<$c);
echo '</tr>';
$row++;
}while($row<$r);
echo '</table>';
?>
未输入值之前会执行一次循环:
输入3行4列: