本文已参与「新人创作礼」活动,一起开启掘金创作之路。
流程控制-3
流程控制就是:控制代码执行的方向
流程控制呢非为三类
控制分类
顺序结构:代码从上往下,顺序执行(代码执行的最基本结构)
分支结构:给定一个条件,同时有多种可执行代码:然后会根据条件执行某一段代码
循环结构:在某个条件控制的范围内,指定的代码,可以重复执行
那么分支结构中包含着两种分支
分别是if分支和switch分支
If:如果的意思,给定一个条件,同时为该条件设置多种(两种)情况,然后通过条件判断来实现具体的执行段。 基本语法:if分支PHP也提供多种方式来实现 最简单if:只有二段代码,但是可以选择是否执行。
<?php
if(条件表达式){
//满足条件所执行的内容
//这里他是顺序结构
}
?>
最基础if:有两面性,满足条件或不满足条件都有对应的执行代码
<?php
if(条件表达式){
//满足条件后执行代码;
}else{
//不满足条件执行代码;
}
?>
复杂计结构:在判断条件之后,通常就有两种结果:满足或者不满足,在不满足之后还可以
再次进行条件判断
<?php
if(条件表达式判断1){
//满足条件条件表达式1执行此代码
}elseif(条件表达式判断2){
//不满足条件表达式1,但是,满足条件表达式2执行此代码
}elseif(条件表达式判断3){
//不满足条件表达式1和2,但是满足3的情况下,执行此代码
}else{
//最后呢全部条件不满足支持此代码
}
?>
最简单if
<?php
$出去玩='星期天';
//如果是星期天就出去玩
//进行判断
if($出去玩 == '星期天'){
echo 'go go go';
}
?>
基础if
<?php
$出去玩='星期天';
if($出去玩 == '星期天'){
echo '走 go go';
}else{
echo '去死吧你';
}
?>
再次判断
<?php
$嫖娼='有钱了';
if($嫖娼 == '有钱'){
echo 'GO GO GO';
}elseif($嫖娼 == '老婆不在家'){
echo '冲 冲 冲';
}elseif($嫖娼 == '中彩票'){
echo '带着兄弟一起去耍';
}else{
echo '没钱,又没老婆,彩票没中奖,去死算啦';
}
?>
Switch分支
Switch分支:有一组情形存在,同过二条件,通常有多个值,但是每一个值都会有对应不同的代码要执行。
Switch判断方式是将条件分到分支结构内部判断
switch基础语法
<?php
switch(条件表达式){}
//这里面就是所有条件的判断
//里面的条件是逐个执行
case值 1:
执行此代码;
break;
//当前表达式条件结果与值1相等就执行
case值 2:
执行此代码;
//当前表达式条件结果与值3相等就执行
break;
//在switch在如果匹配成功,那么系统就不会再进行匹配,会自动顺序执行下面的代码(case代码除外)需要中断执行;break表示终端switch结束
?>
<?php
$今天上学吗='爸爸生病了';
switch($今天上学吗){
case '爸爸生病了';
echo '爸爸生病了不去上学';
break;
case '妈妈生病了';
echo '妈妈生病了不去上学';
break;
case '心情不好';
echo '心情不好不去上学了';
break;
case '小狗生病了';
echo '小狗生病了不去上学';
break;
case '小猫生病了';
echo '小猫生病了不去上学';
break;
}
?>
循环结构
循环结构:代码执行在一定的控制下,可以多次执行
For循环
For循环:通过条件起始和终止判断执行
For循环基本语法
<?php
for(条件表达式1;条件表达式2;条件表达式3){
//条件表达式1:定义初始化条件,可以有多种赋值语句存在,使用逗号分隔即可
//条件表达式2:边界判定,限定循环执行的次数,达到什么次数停止循环
//条件表达式3:用来执行条件变化。
//循环体
}
?>
<?php
$i=1;
for($i = 1; $i<=20;$i++){
echo $i,'<br/>','<hr/>';
}
?>
无条件死循环
<?php
for(;;){
echo '牛逼';
}
//千万不要尝试
//无限输出牛逼
?>
while循环
while:通过判断条件终止
while循环基础语法
<?php
$i=1;
while($i <=10 ){
//循环体
echo $i,'<br/>';
//循环条件
//满足条件没次在上一个的基础上加1
$i++;
}
?>
另外一个格式
<?php
$i=1;
while($i <=10 ){
//循环体
echo $i++,'<br/>';
//循环条件
//满足条件没次在上一个的基础上加1
// $i++;
}
?>
do-while循环
do-while循环:跟while差不多
do-while循环基础语法
<?php
do{
//循环体
}while(条件表达式)
?>
<?php
//定义一个变量
$i=1;
//循环判断
do{
//循环输出
if($i % 2 !=1){
echo $i,'<br/>';
}
//条件变更
$i++;
}while($i <= 30)
?>
流程控制替代语法
流程控制替代语法,简单来说,就是分支和循环结构的替换语法
因为我们的php他是可以和HTML混搭的
那么当我们书写一个混搭的php+html的源码的时候就需要用到替代语法,不使用其实也可以但是会非常的麻烦并且编出来的源代码会非常的不美观
系统常用函数
输出函数
print() 他就类似于echo输出提供的内容,本质是一种结构,不是函数,无论输出什么返回都是1,他可以不需要括号
print_r 他就类似var_dump 但是他不会去输出数据的类型,只会输出值,数组打印使用他比较多
<?php
echo print('hello world<br/>');
print 'hello world<br/>';
//输出的1是echo 的不是print的
$a='hello world';
print_r($a);
?>
时间函数
time() 他是获取我们时间对应的时间戳
microtime() 获取微秒级别的时间
<?php
echo time(),'<br/>';
echo microtime(),'<br/>';
?>
计算机
<!--action=''-->
<!--线上是无法提交到其他页面的所以只能为空这个位置-->
<!--提交的方式为GET-->
<!--method提交方式-->
<form action='' method="GET">
<input type="text" name="num1">
<select name="fh">
<option value="jia"> + </option>
<option value="jian"> - </option>
<option value="cheng"> x </option>
<option value="chu"> / </option>
<option value="qy"> % </option>
</select>
<input type="text" name="num2">
<input type="submit" value="运算" />
</form>
<?php
$num1 = $_GET['num1'];
$num2 = $_GET['num2'];
$fh = $_GET['fh'];
// ||逻辑或,有一个是真则为真,就是你输入一个框一个数字另外一个不输入他也显示
// is_numeric() 函数用于检测变量是否为数字或数字字符串。
// !是取反
if(!is_numeric($num1) || !is_numeric($num2)){
echo '请输入数值类型';
}
// 在php中,两个等号“==”表示“相等”,是一个比较运算符,用于比较等号两边表达式或变量是否相等,只比较值,不比较类型
//
if($fh=='jia'){
echo $num1 . '+'. $num2 . '='. ($num1+$num2);
}
if($fh=='jian'){
echo $num1 . '-' . $num2 . '=' .($num1-$num2);
}
if($fh=='cheng'){
echo $num1 . '*' . $num2 . '=' . ($num1*$num2);
}
if($fh=='chu'){
echo $num1 . '/' . $num2 . '=' .($num1/$num2);
}
if($fh=='qy'){
echo $num1 . '%' . $num2 . '=' .($num1%$num2);
}
?>