在所有電腦程式語言的領域,布林值(boolean)都是程式控制不可或缺的利器;PHP也不例外


布林值只有兩種可能的值,分別是「true」以及「false」這兩個關鍵字


我們雖然可以在程式碼中直接使用這兩個關鍵字來產生布林值,但是,大多數情況下...


布林值大都是由程式語言的關係運算子(relational operator)進行資料的比較運算後產生


【當然,還有一些程式語言的內建函數(function)也會回傳布林值,這些日後再詳細說明】


PHP的關係運算子有 9 個;它們比較其左右兩側的資料後,產生一個結果的布林值


茲將PHP的關係運算子以及比較運算式的運算結果,以下圖示範說明,請逐一加以瞭解


(關係運算子的比較運算結果將涉及程式語言的資料型態以及資料轉換規則,另篇再詳述)



如果學員有興趣,可以把以下的示範程式碼複製後貼到「記事本」中,存成 .php 的檔案...


然後上傳到你的範例練習網站上,再以瀏覽器請求執行,就可以看到相關的結果啦!


=====================================================


<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=big5">
</head>
<body>
<?php
$a = 100;  $b = "100";  $x = 100.0;  $y = "100.0";
$wds = " 比較運算的結果是: ";
$yes = '<font color="red"><strong>true</strong></font>';
$no = '<font color="blue"><strong>false</strong></font>';
echo '當 $a = 100 ,  $b = "100" ,  $x = 100.0 , $y = "100.0" 時';
echo "<p>&nbsp;</p>";
echo "<p>" . '$a == $b' . $wds . ($a == $b ? $yes : $no) . "</p>";
echo "<p>" . '$a == $y' . $wds . ($a == $y ? $yes : $no) . "</p>";
echo "<p>" . '$a == 99.9' . $wds . ($a == 99.9 ? $yes : $no) . "</p>";
echo "<p>" . 'true == false' . $wds . (true == false ? $yes : $no) . "</p>";
echo "<p>" . '$a === 100' . $wds . ($a === 100 ? $yes : $no) . "</p>";
echo "<p>" . '$a === $a' . $wds . ($a === $a ? $yes : $no) . "</p>";
echo "<p>" . '$a === $b' . $wds . ($a === $b ? $yes : $no) . "</p>";
echo "<p>" . '$a === $y' . $wds . ($a === $y ? $yes : $no) . "</p>";
echo "<p>" . '$a != 101' . $wds . ($a != 101 ? $yes : $no) . "</p>";
echo "<p>" . '$a != "abc"' . $wds . ($a != "abc" ? $yes : $no) . "</p>";
echo "<p>" . '$a <> 101' . $wds . ($a <> 101 ? $yes : $no) . "</p>";
echo "<p>" . '$a <> ""' . $wds . ($a <> "" ? $yes : $no) . "</p>";
echo "<p>" . '$a != 100' . $wds . ($a != 100 ? $yes : $no) . "</p>";
echo "<p>" . '$a <> $x' . $wds . ($a <> $x ? $yes : $no) . "</p>";
echo "<p>" . '$a !== $b' . $wds . ($a !== $b ? $yes : $no) . "</p>";
echo "<p>" . '$a !== $x' . $wds . ($a !== $x ? $yes : $no) . "</p>";
echo "<p>" . '$a !== 100' . $wds . ($a !== 100 ? $yes : $no) . "</p>";
echo "<p>" . '$a !== $a' . $wds . ($a !== $a ? $yes : $no) . "</p>";
echo "<p>" . '101 > $a' . $wds . (101 > $a ? $yes : $no) . "</p>";
echo "<p>" . 'true > false' . $wds . (true > false ? $yes : $no) . "</p>";
echo "<p>" . '$a > 100' . $wds . ($a > 100 ? $yes : $no) . "</p>";
echo "<p>" . '$y > $a' . $wds . ($y > $a ? $yes : $no) . "</p>";
echo "<p>" . '$a >= $x' . $wds . ($a >= $x ? $yes : $no) . "</p>";
echo "<p>" . '$y >= $a' . $wds . ($y >= $a ? $yes : $no) . "</p>";
echo "<p>" . '-101 >= $a' . $wds . (-101 >= $a ? $yes : $no) . "</p>";
echo "<p>" . '"0" >= $y' . $wds . ("0" >= $y ? $yes : $no) . "</p>";
echo "<p>" . '"abc" < 1' . $wds . ("abc" < 1 ? $yes : $no) . "</p>";
echo "<p>" . '$b < "abc"' . $wds . ($b < "abc" ? $yes : $no) . "</p>";
echo "<p>" . '"b" < "abc"' . $wds . ("b" < "abc" ? $yes : $no) . "</p>";
echo "<p>" . '0 < "abc"' . $wds . (0 < "abc" ? $yes : $no) . "</p>";
echo "<p>" . '0 <= "abc"' . $wds . (0 <= "abc" ? $yes : $no) . "</p>";
echo "<p>" . '" " <= "abc"' . $wds . (" " <= "abc" ? $yes : $no) . "</p>";
echo "<p>" . '" " <= ""' . $wds . (" " <= "" ? $yes : $no) . "</p>";
echo "<p>" . '1 <= "abc"' . $wds . (1 <= "abc" ? $yes : $no) . "</p>";
?>
</body>
</html>





===================================================


如果你連這個都懶,那就看看我的PHP示範網頁吧!


 



我們都學過數值的加、減、乘、除運算;運算後的結果是什麼資料?...還是數值,對吧!


布林值雖然只有「true」、「false」兩種值,但是,不幸地,也可以進行進一步的運算


布林值的運算...通常稱為邏輯運算,需要仰賴程式語言的邏輯運算子(logical operator)進行


PHP常用的邏輯運算子有 3 個;分別是 && (或 AND)、|| (或 OR)、! (或 NOT)


【PHP也支援 XOR (互斥) 邏輯運算子,但因可經由前述3種的運算加以取代,故不詳述】


此三種邏輯運算子以及相關布林值運算的結果,我們再以圖解說明如下:



「true」、「false」兩個看似簡單的所謂「布林值」,變化其實非常可觀...就像算數一樣


布林值控制了程式軟體的一切動作與反應,如果不將它們弄清楚,那...麻煩就大了!


這不只是PHP,基本上,所有程式語言都是如此!所以囉,不能頭痛蛤~慢慢習慣它!


PHP的技術就是要提供一些可以在網路上執行的所謂「網路應用程式 _ Web Application」


既然有心學,那麼,大家加油蛤~好好地把「布林值」以及「邏輯運算」仔細研究一下...

文章標籤
全站熱搜
創作者介紹
創作者 夜貓 的頭像
夜貓

夜貓的棲息地

夜貓 發表在 痞客邦 留言(5) 人氣(69)