KT客棧

Web程式交流 & 聊幹畫 / 心情手札

【PHP】3 基礎語法-3.3 運算子&運算式(+ - × ÷)

*PHP  3 基礎語法
3.3 運算子&運算式(+ - × ÷)
*運算子 =  加、減、乘、除這些符號皆屬於運算子
*運算元 = $k、$t則是運算元
*運算式 = 透過運算子和運算元所運行而組成

(1)算術運算子
名稱
符號
實例
運算結果
+
5 + 1
6
-
4 - 2
2
*
3 * 6
18
/
20 / 5
4
餘數
%
16 % 5
1
連結
.
"安安" . "你好"
安安你好

<?php
   /*算術運算子*/
   $k = 25;
   $t = 10;
   echo $k + $t . "<br />";
   echo $k - $t . "<br />";
   echo $k * $t . "<br />";
   echo $k / $t . "<br />";
   echo $k % $t . "<br />";
   print_r($k . $t); //也可用print_r()函式來做檢測
?>
算術運算子執行結果如下圖示:

(2)賦值運算子
對比算術運算子是原有的值帶上另一個值再儲存回到原先的變數$k = $k * 2;
賦值運算子則是將其簡化為 $k *= 2;
所以假設這個 $k變數一開始的值是4,並且透過賦值運算子來執行
$k *= 2;,此時該$k變數的值即為8,繼續往下執行時就會以8來往下帶,並以累進的方式執行下去,疑.....聽起來有點饒舌?往下看看就了解囉!  
名稱
符號
實例
運算結果
+=
$k += $t
$k = $k + $t
-=
$k -= $t
$k = $k - $t
*=
$k *= $t
$k = $k * $t
/=
$k /= $t
$k = $k / $t
餘數
%=
$k %= $t
$k = $k % $t
連結
.=
$k .= $t
$k = $k . $t

<?php
   /*賦值運算子*/
   $k = 15;
   $t = 6;
   $s = 2;

   $k *= $s;
   echo $k . "<br/>"; //輸出的值為30
   $k += $t;
   echo $k . "<br/>"; //輸出的值為36,原因在於上一行的$K的值已是30,所以會累加上去(即30+6)
   $k += $k;
   echo $k; //輸出的值為72,原因在於上一行前後2個$K的值都是36,所以會累加上去(即36+36)
?>
賦值運算子執行結果如下圖示:
(3)遞增/遞減運算子
說到遞增、遞減,想必有學過其他語言的都是再熟悉不過,尤其是在迴圈部分,更是時常用來撈取後端資料庫中的資料表欄位值。
名稱
符號
實例
說明
遞增
++
$k = 15; 
$k++;
echo $k;
變數值1
遞減
--
$k = 15
$k--;
echo $k;
變數值1
前置遞增
++$k
$k = 15
echo ++$k;
$k先加1,再存回$k
前置遞減
--$k
$k = 15
echo --$k;
$k減1,再存回$k
後置遞增
$k++
$k = 15
echo $k++;
存回$k,再加1
後置遞減
$k--
$k = 15
echo $k--;
存回$k,再減1

<?php
   /*遞增 運算子*/
   $k = 15; $k++;
   echo '$k = ' . $k . "<br />"; //遞增,輸出$k = 16
   $t = 6;
   echo $t++ . "<br />"; //後置遞增,輸出6
   echo $t++ . "<br />"; //後置遞增,輸出7
   echo $t++ . "<br />"; //後置遞增,輸出8
   $s = 2;
   echo ++$s . "<hr>"; //前置遞增,輸出3

   /*遞減 運算子*/
   $k = 15; $k--;
   echo '$k = ' . $k . "<br />"; //遞增,輸出$k = 14
   $t = 6;
   echo $t-- . "<br />"; //置遞減,輸出6
   echo $t . "<br />"; //輸出5
   $s = 2;
   echo --$s . "<br />"; //前置遞減,輸出1
?> 
遞增/遞減運算執行結果如下圖示:








(4)比較運算子
把兩邊的運算元做對比,透過var_dump函式將結果以布林值回傳
說明
符號
實例
說明
相等
==
$k = $t
兩者相等
全等
===
$k === $t
兩者相等型別也相同
不等於
<>
$k <> $t;
兩者不相等
不等於
!=
$k != $t;
兩者不相等
不全等
!==
$k !== $t;
兩者不相等或型別不相同

>大於,<小於,<=小於等於,>=大於等於就不贅述。
<?php
   /*比較 運算子*/
   $k=10; //數值
   $t="10"; //字串
   var_dump($k == $t); // 回傳 true 因為型別會自動轉換
   echo "<br>";
   var_dump($k === $t); // 回傳false 因為型別不相等
   echo "<br>";
   var_dump($k != $t); // 回傳 false 因為型別會自動轉換,所以$k"並非"不等於$t
   echo "<br>";
   var_dump($k !== $t); // 回傳 true 因為型別不相等,所以$k"是"不等於$t
   echo "<hr>";

   $a=30;
   $b=40;
   var_dump($a <> $b); // 回傳 true
   echo "<br>";
   var_dump($a <  $b); // 回傳 true
?> 
比較運算執行結果如下圖示:








(5)條件運算子
條件運算子是透過"?"、":",來做條件判斷
條件運算式 ? true時回傳的值 : false時回傳的值 ;
<?php
   /*條件 運算子*/
   $k = '我有一支筆';
   $name = isset($k) ? $k : '沒有東西';
   //isset是檢查該變數是否存在的函式
   //檢查$k是否存在,若存在就秀出變數值,反之則秀出'沒有東西'
   echo $name . "<br />";

   /*三元條件 運算子*/
   $x = 20; $y = 15;
   $z = $x ?: $y; //簡寫的方式,當$x有值就會回傳$x存入$z秀出,反之則秀出$y的值
   echo $z;
?> 







沒有留言:

張貼留言

@templatesyard