學PHP之語句

來源:互聯網
上載者:User
目錄

[1]if語句 [2]switch [3]while[4]do-while[5]for語句[6]foreach[7]break[8]continue[9]goto

前面的話

  任何 PHP 指令碼都是由一系列語句構成的。一條語句可以是一個指派陳述式,一個函數調用,一個迴圈,一個條件陳述式或者甚至是一個什麼也不做的語句(空語句)。語句通常以分號結束。此外,還可以用花括弧將一組語句封裝成一個語句組。語句組本身可以當作是一行語句。本文將詳細介紹各種語句類型


if語句

  if 結構是很多語言套件括PHP在內最重要的特性之一,它允許按照條件執行程式碼片段

if (條件) { 當條件為 true 時執行的代碼;}if (條件) { 條件為 true 時執行的代碼;} else { 條件為 false 時執行的代碼;}if (條件) { 條件為 true 時執行的代碼;} elseif (條件) { 條件為 true 時執行的代碼;} else { 條件為 false 時執行的代碼;}<?php$t=date("H");if ($t<"10") { echo "Have a good morning!";} elseif ($t<"20") { echo "Have a good day!";} else { echo "Have a good night!";}?>
switch語句

  switch語句類似於具有同一個運算式的一系列 if 語句。很多場合下需要把同一個變數(或運算式)與很多不同的值比較,並根據它等於哪個值來執行不同的代碼。這正是 switch 語句的用途

  [注意]switch/case做的是鬆散比較

switch (expression){case label1: code to be executed if expression = label1; break; case label2: code to be executed if expression = label2; break;default: code to be executed if expression is different from both label1 and label2;}<?phpswitch ($x){case 1: echo "Number 1"; break;case 2: echo "Number 2"; break;case 3: echo "Number 3"; break;default: echo "No number between 1 and 3";}?>
while語句

  while 迴圈是 PHP 中最簡單的迴圈類型。while語句的含意很簡單,它告訴 PHP 只要 while 運算式的值為 TRUE 就重複執行嵌套中的迴圈語句。運算式的值在每次開始迴圈時檢查,所以即使這個值在迴圈語句中改變了,語句也不會停止執行,直到本次迴圈結束。有時候如果 while 運算式的值一開始就是 FALSE,則迴圈語句一次都不會執行

while (expr) statement<?php$i = 1;while ($i <= 10) { echo $i++; }$i = 1;while ($i <= 10): print $i; $i++;endwhile;?>
do-while

 do-while 迴圈和 while 迴圈非常相似,區別在於運算式的值是在每次迴圈結束時檢查而不是開始時。和一般的 while 迴圈主要的區別是 do-while 的迴圈語句保證會執行一次(運算式的真值在每次迴圈結束後檢查)

do { 要執行的代碼;} while (條件為真);<?php$i = 0;do { echo $i;} while ($i > 0);?>
for語句

  for 迴圈是 PHP 中最複雜的迴圈結構。for迴圈語句中,初始化在迴圈開始前無條件求值一次,迴圈條件在每次迴圈開始前求值。如果值為true,則繼續迴圈,執行迴圈體語句;如果值為false,則終止迴圈。遞增語句在每次迴圈後執行

for (init counter; test counter; increment counter) { code to be executed;} <?php for ($x=0; $x<=10; $x++) { echo "數字是:$x <br>";} ?>
foreach

  foreach文法結構提供了遍曆數組的簡單方式。foreach 僅能夠應用於數組和對象,如果嘗試應用於其他資料類型的變數,或者未初始化的變數將發出錯誤資訊

  每進行一次迴圈迭代,當前數組元素的值就會被賦值給$value變數,並且數組指標會逐一移動,直到到達最後一個數組元素。一般有兩種方式:不取下標、取下標

  【1】只取值,不取下標

foreach ($array as $value) { code to be executed;} <?php $colors = array("red","green","blue","yellow"); foreach ($colors as $value) { echo "$value <br>";}?>

  【2】同時取下標和值

foreach ($array as $index => $value) { code to be executed;} <?php $colors = array( "r"=>"red", "g"=>"green", "b"=>"blue", "y"=>"yellow"); /*r:redg:greenb:bluey:yellow*/foreach ($colors as $key => $value) { echo $key.":".$value."<br>";}?>
break

  break 結束當前 for,foreach,while,do-while 或者 switch 結構的執行

  break 可以接受一個可選的數字參數來決定跳出幾重迴圈

$i = 0;while (++$i) { switch ($i) { case 5: echo "At 5<br />\n"; break 1; /* 只退出 switch. */ case 10: echo "At 10; quitting<br />\n"; break 2; /* 退出 switch 和 while 迴圈 */ default: break; }}
continue

  continue 在迴圈結構用用來跳過本次迴圈中剩餘的代碼並在條件求值為真時開始執行下一次迴圈

  continue 接受一個可選的數字參數來決定跳過幾重迴圈到迴圈結尾。預設值是 1,即跳到當前迴圈末尾

$i = 0;while ($i++ < 5) { echo "Outer<br />\n"; while (1) { echo "Middle<br />\n"; while (1) { echo "Inner<br />\n"; continue 3; } echo "This never gets output.<br />\n"; } echo "Neither does this.<br />\n";}
goto

  goto 操作符可以用來跳轉到程式中的另一位置。該目標位置可以用目標名稱加上冒號來標記,而跳轉指令是 goto 之後接上目標位置的標記。PHP 中的 goto 有一定限制,目標位置只能位於同一個檔案和範圍,也就是說無法跳出一個函數或類方法,也無法跳入到另一個函數。也無法跳入到任何迴圈或者 switch 結構中。可以跳出迴圈或者 switch,通常的用法是用 goto 代替多層的 break

<?phpgoto a;echo 'Foo'; a://'Bar'echo 'Bar';?>

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.