-》php基本语法-三元运算符php
基本语法 程序员
表达式1?表达式2:表达式3学习
规则:若是表达式1的结果是true,则取表达式 2的值。不然,取表达式3的值。spa
举例:code
<?php $a=90; $b=180; $c=$a>$b?(12-10):"hello,world"; echo 'c=='.$c; ?>
-》php 的字符串运算符orm
案例:对象
<?php $a="hello ,world"; $b=123; $c=$b.$a;//$a具体表示内容和$b 表示内容拼接 echo $c; ?>
-》php 的字符串运算符内存
案例:开发
$a="hello,world"; $b=123; $=$b.$a;//$a具体表示内容 和$b 表示内同拼接 echo $c;
从上例案例咱们看出,当两个变量(基本数据类型)用,连接的时候,就表示把他们的内容拼接字符串
-》类型运算符
基本语法是:instanceof 用于肯定一个php 变量是否属于某一类class 的实例,一般在面向对对象
开发中可能用的。
class Dog{} class Dog{} //建立一个对象 $cat1=new Cat; //var_dump($cat1 instanceof Dog); //在世纪开发中,咱们可能须要去判断某个变量是不是某个类型 if($cat1 instanceof Cat){ echo'$cat1 是一只猫'; }
-》运算符优先级的说明
//*****运算优先级**** $a=3; $b=++$a*3; echo $b;
①②③④⑤⑥⑦⑧⑨⑩
-》php 程序的三大流程控制
① 顺序控制
$a=7; echo "a=".a; echo "hello!"; $a++; echo"a=".a; echo "O(∩_∩)O"; $a++; echo"a="+a;
所谓顺序控制流程,就是不加控制的流程,默认状况,会按照,顺序类执行你编写的代码
②分支控制
一个简单的定义:有选择的来执行咱们的代码;
分为1.单分支 2.双分支 3.多分支
1.单分支的基本语法结构
if(条件表达式){
语句;
//.....
//.........
}
这里咱们,这里的条件表达式无论多复杂,最总运算的结果就是true 或者 false.
快速入门:
编写一个程序,能够输入人的年龄,若是该同志的年龄大于年龄大于18岁,则输出“你年龄大
于18岁,要对本身的星期负责”
$age=7; if($age>18){ echo'你的年龄大于18'; }
2.双分支
基本语法结构
if(条件表达式){
//n多语句;
}else{
//n多语句;
}
编写一个程序,能够输入人的年龄,若是该同志的年龄大于18岁,则输出“你年龄大于18岁,要对本身的行为负责!”。不然,输出“你的年龄不大此次放过你了。”
代码: $age=4; if($age>18){ echo'你的年龄大于18'; }else{ echo'你的年龄小于18'; } echo'<br/>程序结束';
3.多重分支
基本语法结构是
if(条件表达式){
//n多语句
}else if(条件表达式){
//n多语句
}else if (条件表达式){
//。
}//这里可能还有更多的else if
else{
}
☞对上面的结构请注意:
(1) else if 能够有一个,也能够有多个
(2) else 能够没有
快速入门案例:
编写一个程序,能够输入人的年龄,若是该同志的年龄大于18岁,则输出“你的年龄大于18,要对
本身的行为负责,送入监狱”。若是该同志的年龄大于10岁,而且小于等于18,则输出“你的年
龄也不小了,把你送进少管所”。其余的状况则输出“小孩子,下次注意”;
代码以下: $age=34; if($age>18){ echo'你要被送进监狱'; }else if($age>10 && $age<=18){ echo'送入少管所'; }else{ echo'下次注意'; } echo 'over';
流程分析图:
switch 分支语句
基本的语法结构
switch(表达式){
case 常量1;
//n多语句;
break;
case 常量2;
//n多语句;
break;
defual:
//n多语句;
break;
}
☞请注意:
1.case 语句有一到多
2.defual 语句能够没有(根据本身代码的业务逻辑)
3.一般,在case语句后,要带break,表示退胡switch语句。
4.常量的类型(int,float,字符串。布尔型)
快速入门案例:
请编写一个程序,该程序 能够接收一个字符,好比:a,b,c,d,e,f,g a表示星期一,b表示星期二...根据用户的输入显示相依的信息,要求使用switch语句完成 $myChar="b"; switch($myChar){ case"a": echo'今天星期一,猴子穿新衣'; case"b": echo'今天星期二,猴子当小二'; case"c": echo'今天星期三,猴子爬雪山'; default: echo'没有匹配的日期'; } echo 'okokook';
一个案例:
$i=11; switch($i){ case 10: echo'10'; case 1.3: echo'11'; break; default: echo'hello'; break; case 11: echo'12'; break; }
该案例得出了一个结论:
最终的结论是:首先按照case 顺序进行配置,若是一个都没有匹配到,则执行default 语句的
内容,知道遇到break,则退出switch
学生的问题:老师,说一下if语句和switch 的区别,及应用场景。
回答:从咱们学习if 和switch 分支看,if 对某个范围的判断,而switch 是对一个点的判断, 全部咱们能够这样去选择他们:
应用场景:当咱们的分支就是几个点的时候(好比判断坦克的方向),就应当使用switch,若是你的分支是几个区域(范围)的判断,则考虑使用if
③ 循环控制流程
首先说for 循环控制
基本语法结构
for(循环初值;循环的条件;步长){
//n多语句;
}
为何须要控制循环控制?
问题:请输出900000000句,”你好,北京“
这样一问题:怎让让咱们的某段代码,循环的执行
分析图
for($i=0;$i<2;$i++){
echo'<br/>你好,北京';
}
echo"over";
内存图:
while 循环
基本语法结构是
while(循环条件){
//循环体,语句
}
案例:使用while 来打印 10句“你好 北京”;
代码:
//*******while 循环******* $i=0;//$i循环控制变量 while($i<10){ echo'<br/> 你好 北京'.$i; //这里咱们对循环控制变量,自增。 $i++; }
流程分析图:
do....while 循环控制
基本语法结构
do{
//循环体
}while(循环条件);
快速入门:循环的显示 10句,“你好 北京”;
$i=0;//循环控制变量 do{ echo'<br/> dowhile 你好北京'.$i; //对循环控制变量修改 $i++;//这里有程序员本身控制步长 }while($i<10);
执行的流程图:
综合案例:
要求:
请使用循环控制语句,输出一个空心的菱形
*
* *
* *
* *
*
可是这个菱形的层数能够灵活的变化。
比较困难-----------》》简单化
<------
----->
案例以下:
//打印出金字塔的一半
//死去活来
//外层的for循环控制层数
for($i=1;$i<=3;$i++){ //内层控制每层*的个数 for($j=1;$j<$i;$j++){ echo'*'; } echo '<br/>'; }
//打印出整个金字塔
//若是打印3层
//* * -》1 2个空格 1个*(1-1)*+1=1
//** *** -》2 1个空格 3个* (2-1)*2+1=3
//*** ***** -》3 0 个空格 5个* (3-1)*2+1=5
$n=20; for($i=1;$i<=$n;$++){ // 在打印*前,先打印空格 for($j=1;$j<=($i-1)*2+1;$j++){ echo'*'; } echo'<br/>'; }
请你们打印出一个空心金字塔
*
* *
****
思路:
咱们能够这样考虑,在给每行输出*号的时候,要有判断,(该给*号给*号,该给空格给空格)
思路确定分析:
和一个空心的菱形。
①②③④⑤⑥⑦⑧⑨⑩