1.重点:太空船运算符
(1):<=>
个人理解:之前没有接触过这个运算符,感觉类似与比较运算符
演示:$a = $b;
$c=$a <=> $b;//$a与$b的值相等,其比较结果为0//
echo $c;输出的值为 0;
$a < $b;
$c=$a <=> $b;//$a小与$b的值,其比较结果为-1//
echo $c;输出结果为 -1;
$a > $b;
$c=$a <=> $b;//$a大于$b的值,其比较结果为1//
echo $c;输出结果为 1;
2.比较运算符&&
| $a && $b
| 逻辑与
一般表示 $a与b的值都为真,多用于if当中
演示:$a=1;$b=2;$c=3;
if($c>$b && $b>$a){
return 0;
}
| ||
| $a || $b
| 逻辑或
一般表示$a的值为真或者$b的值为真,多用于if当中
演示::$a=1;$b=2;$c=3;
if($c>$b || $a>$b){
return 0;
}
| !
| !$a
| 逻辑非
一般表示取反!$a,多用于if当中
$a=1;$b=2;$c=3;
if(!$a){//当$a为假时,执行if语句,返回输出0;
return 0;
}
其他运算符:+=,-=,*=,/=,%=;这些为简写的模式
3.流程控制
(1):分支流程控制
个人理解:有多种情况的选择,让程序进入适合的情况执行
语法 1:单分支 if(){};
演示:$a=5;
if($a>0){
return 0;
};
模板控制语法:
if($a>0):
return 0;
endif;
输出结果:0 //$a符合大于0的条件,进入if语句内执行,返回0//
语法 2:双分支 if(){} else {};
演示:$a=5;
if($a<5){
return 0;
}else{
return 1;
};
模板控制语法:
if($a<5):
return 0;
else:
return 1;
endif;
输出结果:1 //$a不符合小于5的条件,所以进入else语句中,返回1//
语法 3:多分支 if(){} elseif{} else{};或者 switch();
演示:$a=5;
if($a>0&&$a<4){
return 0;
}elseif($a>=5){
return 1;
}else{
return 2;
}
模板控制语法:
if($a>0&&$a<4):
return 0;
elseif($a>=5):
return 1;
else:
return 2;
endif;
switch($a){
cate1:$a=1;
echo 1;
break;
cate2:$a=2;
echo 2;
break;
cate3:$a=3;
echo 3;
break;
cate4:$a=4;
echo 4;
break;
cate:$a=5;
echo 5;
break;
default:
return 0;
};
模板控制语法:
if($a>0&&$a<4):
return 0;
elseif($a<=5):
return 1;
else:
return 2;
endif;
switch($a):
cate $a=1;
echo 1;
break;
cate $a=2;
echo 2;
break;
cate $a=3;
echo 3;
break;
cate $a=4;
echo 4;
break;
cate $a=5;
echo 5;
break;
default:
return 0;
endswitch;
循环语法结构
主要两种循环语法:
(1) while()或者do{}while();
演示:
<?php
$i=0;
$j=0;
$a = array('洛杉矶','湖人','16冠');
while($a){
echo current($a);
next($a);
continue;
}
?>
输出结果为 洛杉矶//循环1次后continue结束循环//
模板语法:
<?php
$i=0;
$j=0;
$a = array('洛杉矶','湖人','16冠');
while($a):
echo current($a);
next($a);
continue;
endwhile;
?>
for循环演示:
<?php
$i=0;
$j=0;
$a = array
(
array("球鞋","耐克","18件"),
array("球服","湖人","15件"),
array("护具","头巾","52条")
);
$c=(count($a,1)-count($a,0))/count($a,0);
for($i=0;$i<count($a,0);$i++){
for($j=0;$j<$c;$j++){
echo ( $a[$i][$j]);
break;
}
echo '<br>';
}
?>
<?php
$i=0;
$j=0;
$a = array
(
array("球鞋","耐克","18件"),
array("球服","湖人","15件"),
array("护具","头巾","52条")
);
$c=(count($a,1)-count($a,0))/count($a,0);
for($i=0;$i<count($a,0);$i++){
for($j=0;$j<$c;$j++)
echo $a[$i][$j];
break;
}
echo '<br>';
?>
输出结果为:球鞋<br>球服<br>护具<br>//内层for循环时候都有遇到break,所有一直跳出//
模板写法:按照之前的格式写出来不对
重点
之前没有使用过 current(),next(),第一次接触
echo current($a);//输出当前数组$a的第一个元素的值//
next($a)//将数组指针指向下一个值//
reset($a)//将数组回到一个元素位置