php是一門計算機編程語言,主要應用於開發web應用(網站建設等),本系列博客從php基礎語法出發,介紹php基礎知識。使讀者深刻淺出的學習到編程的樂趣。php
本系列博客將講解如下9個知識點,變量、常量、數據類型、運算符、數組、流程控制(順序、選擇、循環)、函數、文件處理、面向對象git
每篇文章都會在文末留下一個課後做業,答案獲取請私聊我,你們能夠在評論區積極討論,共同進步github
流程其實就是控制決定代碼的執行順序,在實際編程中,莫過於順序、選擇、循環這三種場景,咱們將這三種場景學會後,就能夠讀懂大多數的代碼。web
對於初學者而言,流程控制是一大難點。可是倒是不可缺乏的一部分。咱們要認真的學習它。編程
順序結構顧名思義是順序執行的,換句話來講代碼從上往下依次執行,不會跳過中間的某一行代碼。平時編程大多數代碼都是順序結構。數組
選擇結構有點像高中數學裏學習的程序框圖裏面的分支結構,也就是說知足條件則這段代碼,不知足條件則執行另外一段代碼。同時也能夠嵌套其餘的語句。php 裏面主要是以if...else...、switch...case...等爲主。微信
if...else...
若是if後面的表達式成立則執行第一個大括號的語句,不然執行第二個大括號的語句。編程語言
<?php /** * Created by 冷月小白. * 微信公衆號: 學長冷月 */ if (2>1) { echo "2大於1"; } else { echo "2不大於1"; }
執行結果:函數
if...elseif...else
若是if後面的表達式成立則執行第一個大括號的語句,而後判斷elseif的語句是否成立,若成立則執行第二個大括號的語句,不然執行第三個大括號的語句。而且能夠繼續嵌套。學習
<?php /** * Created by 冷月小白. * 微信公衆號: 學長冷月 */ if (2 > 1) { echo "2大於1"; } elseif (1 > 0) { echo "1大於0"; } else { echo "1不大於0"; }
執行結果:
switch...case...
根據switch後面的大括號的值進行 每個case塊的匹配,匹配成功則執行相應的大括號的語句。
注:
每個case塊最後必須加上break; 不然一旦匹配成功,將會將後面的全部代碼執行,包括其餘case塊的代碼。
<?php /** * Created by 冷月小白. * 微信公衆號: 學長冷月 */ $month = 4; switch ($month) { case 1: echo "1月"; break; case 2: echo "2月"; break; case 3: echo "3月"; break; case 4: echo "4月"; break; case 5: echo "5月"; break; case 6: echo "6月"; break; case 7: echo "7月"; break; case 8: echo "8月"; break; case 9: echo "9月"; break; case 10: echo "10月"; break; case 11: echo "11月"; break; case 12: echo "12月"; break; }
執行結果:
若是有業務場景是須要重複執行一段代碼,則循環結構是二不之選。
for
for循環格式:for(表達式1;表達式2;表達式3){代碼塊}
表達式1給控制變量賦初值,表達式2爲設置跳出條件,表達式3爲步長。
<?php /** * Created by 冷月小白. * 微信公衆號: 學長冷月 */ for ($i = 0; $i < 10; $i++) { printf("我要買{$i}杯牛奶"); echo "<br />"; }
執行結果:
while
while循環格式:while(表達式){代碼塊}
若是while的條件爲永真,則會一直執行,陷入死循環;若是爲永假,則一次也不執行。
<?php /** * Created by 冷月小白. * 微信公衆號: 學長冷月 */ $i = 0; while ($i<10) { printf("我要買{$i}杯牛奶"); echo "<br />"; $i++; }
執行結果:
do .. while
do..while循環格式:do{代碼塊}while(表達式)
若是while的條件爲永真,則會一直執行,陷入死循環;若是爲永假,則也會執行一次。
<?php /** * Created by 冷月小白. * 微信公衆號: 學長冷月 */ $i = 10; //給$i 賦初值爲10 do { printf("我要買{$i}杯牛奶"); echo "<br />"; $i++; } while ($i < 10); //$i不小於10 條件爲假
執行結果:
業務場景:小明期末考試不及格,回到家後,若是首先告訴爸爸則會被打10下手掌;若是首先告訴媽媽則會被罰跑5圈步。請用合適的代碼表示出來。
<?php /** * Created by 冷月小白. * 微信公衆號: 學長冷月 */ $i = 1; //用1表明告訴爸爸 switch ($i) { case 1: //用1表明告訴爸爸 for ($j = 1; $j <= 10; $j++) { printf("被打的第{$j}下手掌"); echo "<br />"; } break; case 2: //用2表明告訴媽媽 for ($j = 1; $j <= 5; $j++) { printf("被罰跑的第{$j}圈"); echo "<br />"; } break; }
執行結果:
一、while 和do...while的區別
二、業務場景:小明期末考試考了68分,以前和爸爸約定只要誠實的說出分數,則不管如何均可以去一次遊樂園以後每多10分就能夠多去一次,請用合適的代碼表示出來。
課後練習答案,經過微信搜一搜「 學長冷月 」回覆 php獲取
文章持續更新,本文 GitHub https://github.com/lengyueit/phpFamily 已收錄,歡迎Star。
若是這篇博文有幫助到您,能夠幫冷月點一個贊或者加一個關注哦!