php條件語句(一)


PHP If...Else 語句

條件語句用於根據不同條件執行不同動作。

PHP 條件語句

當您編寫代碼時,您常常需要為不同的判斷執行不同的動作。您可以在代碼中使用條件語句來完成此任務。

在 PHP 中,提供了下列條件語句:

  • if 語句 - 在條件成立時執行代碼
  • ? :  -三元運算符
  • if...else 語句 - 在條件成立時執行一塊代碼,條件不成立時執行另一塊代碼
  • if...else if....else 語句 - 在若干條件之一成立時執行一個代碼塊
  • switch 語句 - 在若干條件之一成立時執行一個代碼塊

PHP - if 語句

if 語句用於僅當指定條件成立時執行代碼

語法

if ( 條件)
{
條件成立時要執行的代碼
;
}

如果當前時間小於 20,下面的實例將輸出 "Have a good day!":

<?php 
$t=date("H"); 
if ($t<"20") 
{ 
echo "Have a good day!"; 
} 
?>

  運行結果:

Have a good day!

  

三元運算符

另一個條件運算符是"?:"(或三元)運算符 。

語法格式

(expr1) ? (expr2) : (expr3)

對 expr1 求值為 TRUE 時的值為 expr2,在 expr1 求值為 FALSE 時的值為 expr3。

自 PHP 5.3 起,可以省略三元運算符中間那部分。表達式 expr1 ?: expr3 在 expr1 求值為 TRUE 時返回 expr1,否則返回 expr3。

以下實例中通過判斷 $_GET 請求中含有 user 值,如果有返回 $_GET['user'],否則返回 nobody:

<?php
$test = 'php中文網';
// 普通寫法
$username = isset($test) ? $test : 'nobody';
echo $username, PHP_EOL;

// PHP 5.3+ 版本寫法
$username = $test ?: 'nobody';
echo $username, PHP_EOL;
?>

  運行結果:

php中文網
php中文網

注意:PHP_EOL (\)是一個換行符,兼容更大平台。

  這里解釋下,細心的你可能會發現,后面的PHP_EOL並沒有被瀏覽器顯示出來,因為瀏覽器只識別HTML標簽,如:<br />,<p>;PHP_EOL只有在文本中才會被顯示;

在 PHP7+ 版本多了一個 NULL 合並運算符,實例如下:

<?php
// 如果 $_GET['user'] 不存在返回 'nobody',否則返回 $_GET['user'] 的值
$_GET['user] = '小明';
$username = $_GET['user'] ?? 'nobody';
echo $username;
echo "<br />"; // 類似的三元運算符 $username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
echo $username; ?>

  運行結果:

小明
小明

  

 PHP - if...else 語句

在條件成立時執行一塊代碼,條件不成立時執行另一塊代碼,請使用 if....else 語句。

語法

if ( 條件)
{
條件成立時執行的代碼;
}
else
{
條件不成立時執行的代碼;
}

如果當前時間小於 20,下面的實例將輸出 "Have a good day!",否則輸出 "Have a good night!":

<?php 
$t=date("H"); 
if ($t<"20") 
{ 
echo "Have a good day!"; 
} 
else 
{ 
echo "Have a good night!"; 
} 
?>

  運行結果:

Have a good day!

  

PHP - if...else if....else 語句

在若干條件之一成立時執行一個代碼塊,請使用 if....else if...else 語句。.

語法

if ( 條件)
{
if 條件成立時執行的代碼;
}
else if ( 條件)
{
elseif 條件成立時執行的代碼;
}
else
{
條件不成立時執行的代碼;
}

如果當前時間小於 10,下面的實例將輸出 "Have a good morning!",如果當前時間不小於 10 且小於 20,則輸出 "Have a good day!",否則輸出 "Have a good night!":

<?php 
$t=date("H"); 
if ($t<"10") 
{ 
echo "Have a good morning!"; 
} 
else if ($t<"20") 
{ 
echo "Have a good day!"; 
} 
else 
{ 
echo "Have a good night!"; 
} 
?>

  運行結果:

Have a good day!

  

 

switch 語句將在php條件語句(二)中


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM