for循环语句
打印金字塔
完整的金字塔
1 //打印金字塔 2 $n=25; 3 for($i=1;$i<=$n;$i++){ 4 //空格循环 5 for($k=1;$k<=$n-$i;$k++){ 6 echo ' '; 7 } 8 //字符循环 9 for($j=1;$j<=$i*2-1;$j++){ 10 11 if($i==1 || $i==$n){ 12 echo '.'; 13 } 14 else{ 15 if($j==1 || $j==$i*2-1){ 16 echo '.'; 17 }else{ 18 echo ' '; 19 } 20 } 21 } 22 /* 23 for($j=1;$j<=($i-1)*2+1 ; $j++) { 24 echo '.'; 25 }*/ 26 echo '<br/>'; 27 28 }
switch语句:
1 /*$a="1"; 2 switch ($a) { 3 case 1: 4 echo $a; 5 break; 6 7 default: 8 echo "错误"; 9 break; 10 } 11 //自动转换字符串和数字
switch选择语句中遇到布尔值时的处理:
1 $b=true; 2 switch($b){ 3 case false: 4 echo "不匹配"; 5 break; 6 //代表非false的值都可以为true-----自动转换类型 7 case "1": 8 echo "成功匹配"; 9 break; 10 default: 11 echo "ko"; 12 } 13 //1.default语句不论顺序都是最后执行,如果没有匹配到其他的case,那么就执行default语句 14 //2.如果没有break语句,那么就会输出下一个case的结果,直到有break为止。
while循环和do..while循环:
1 /*while循环 2 $i=0; 3 while($i<10){ 4 echo "paxster<br>".$i; 5 $i++; 6 } 7 //do..while循环--------先执行再判断,至少执行一次 8 /*$do=0; 9 do{ 10 echo '<br />Paxster'; 11 $do=$do+1; 12 }while($do<8);*/
while循环和switch选择语句的结合:
常量:
1 //定义常量-----两种方法 2 define('TAX',200); 3 echo TAX; 4 5 const Tab=100; 6 echo Tab;
编写简易计算器:
step1:编写输入界面
1 <html> 2 <head> 3 <title></title> 4 5 </head> 6 <body> 7 8 <form action="CAL.php" method="get"> 9 <input type="text" placeholder="输入一个数" name="num1"> 10 <input type="text" placeholder="输入一个数" name="num2"> 11 <select name="operation"> 12 <option value="+">+</option> 13 <option value="-">-</option> 14 <option value="*">*</option> 15 <option value="/">/</option> 16 </select> 17 <input type="submit" value="计算"> 18 </form> 19 </body> 20 </html>
step2:写计算后台代码
1 <?php 2 $num1=$_REQUEST['num1']; 3 $num2=$_REQUEST['num2']; 4 5 $operation=$_REQUEST['operation']; 6 $res=0; 7 8 switch($operation){ 9 case '+': 10 $res=$num1+$num2; 11 break; 12 case '-': 13 $res=$num1-$num2; 14 break; 15 case '*': 16 $res=$num1*$num2; 17 break; 18 case '/': 19 $res=$num1/$num2; 20 break; 21 default: 22 echo '输入有误'; 23 } 24 25 echo '结果是'.$res; 26 ?>
continue语句:跳过本次循环后面的代码。可以指定跳出指定的层数,例如continue 2;表示跳出两层,类似于break 2;
goto语句:和c语言一样,跳转到有标签的代码处,中间的代码不会执行,直接忽略。
1 //goto语句 2 //i只执行一次 3 for($i=0,$j=50;$i<100;$i++){ 4 while($j--){ 5 if($j==17) goto end; 6 } 7 } 8 echo 'i=$i'; 9 end: 10 echo 'i='.$i.'j='.$j;