溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP基礎運算符有哪些

發布時間:2021-10-15 10:57:50 來源:億速云 閱讀:170 作者:iii 欄目:編程語言
# PHP基礎運算符有哪些

PHP作為一門廣泛使用的服務器端腳本語言,其運算符系統豐富而全面。運算符是構成PHP表達式的核心元素,掌握各類運算符的用法是PHP編程的基礎。本文將全面介紹PHP中的基礎運算符,包括算術運算符、賦值運算符、比較運算符、邏輯運算符、字符串運算符、數組運算符等,并通過大量示例幫助讀者深入理解。

## 一、算術運算符

算術運算符用于執行基本的數學運算,如加減乘除等。PHP支持以下算術運算符:

| 運算符 | 名稱       | 示例       | 結果                     |
|--------|------------|------------|--------------------------|
| +      | 加法       | $a + $b    | $a和$b的和               |
| -      | 減法       | $a - $b    | $a和$b的差               |
| *      | 乘法       | $a * $b    | $a和$b的積               |
| /      | 除法       | $a / $b    | $a除以$b的商             |
| %      | 取模       | $a % $b    | $a除以$b的余數           |
| **     | 冪運算     | $a ** $b   | $a的$b次方               |
| -      | 取反       | -$a        | $a的負數                 |
| ++     | 自增       | $a++或++$a | $a的值增加1              |
| --     | 自減       | $a--或--$a | $a的值減少1              |

### 1.1 基本算術運算示例

```php
$a = 10;
$b = 3;

echo $a + $b;  // 輸出13
echo $a - $b;  // 輸出7
echo $a * $b;  // 輸出30
echo $a / $b;  // 輸出3.333...
echo $a % $b;  // 輸出1
echo $a ** $b; // 輸出1000

1.2 自增和自減運算符

自增(++)和自減(–)運算符有前置和后置之分:

$x = 5;
echo $x++; // 輸出5,然后$x變為6
echo ++$x; // $x先變為7,然后輸出7

$y = 8;
echo $y--; // 輸出8,然后$y變為7
echo --$y; // $y先變為6,然后輸出6

二、賦值運算符

賦值運算符用于給變量賦值,最基本的賦值運算符是”=“。PHP還支持組合賦值運算符,將算術運算和賦值操作結合在一起。

運算符 示例 等價于 描述
= \(a = \)b - \(b的值賦給\)a
+= \(a += \)b \(a = \)a + $b 加法賦值
-= \(a -= \)b \(a = \)a - $b 減法賦值
*= \(a *= \)b \(a = \)a * $b 乘法賦值
/= \(a /= \)b \(a = \)a / $b 除法賦值
%= \(a %= \)b \(a = \)a % $b 取模賦值
**= \(a **= \)b \(a = \)a ** $b 冪賦值
.= \(a .= \)b \(a = \)a . $b 字符串連接賦值

2.1 基本賦值示例

$a = 10;  // 簡單賦值
$b = 5;

$a += $b; // $a = $a + $b = 15
$a -= $b; // $a = $a - $b = 10
$a *= $b; // $a = $a * $b = 50
$a /= $b; // $a = $a / $b = 10
$a %= $b; // $a = $a % $b = 0

2.2 字符串連接賦值

$str = "Hello";
$str .= " World!"; // $str = "Hello World!"

三、比較運算符

比較運算符用于比較兩個值,返回布爾值true或false。PHP提供了多種比較運算符:

運算符 名稱 示例 結果
== 等于 \(a == \)b 如果\(a等于\)b返回true
=== 全等 \(a === \)b 如果\(a等于\)b且類型相同
!= 不等 \(a != \)b 如果\(a不等于\)b返回true
<> 不等 \(a <> \)b 與!=相同
!== 不全等 \(a !== \)b 如果\(a不等于\)b或類型不同
< 小于 \(a < \)b 如果\(a小于\)b返回true
> 大于 \(a > \)b 如果\(a大于\)b返回true
<= 小于等于 \(a <= \)b 如果\(a小于等于\)b返回true
>= 大于等于 \(a >= \)b 如果\(a大于等于\)b返回true
<=> 太空船 \(a <=> \)b 比較兩個表達式的大小

3.1 基本比較示例

$a = 5;
$b = "5";

var_dump($a == $b);   // bool(true),值相等
var_dump($a === $b);  // bool(false),類型不同
var_dump($a != $b);   // bool(false)
var_dump($a !== $b);  // bool(true)
var_dump($a < 10);    // bool(true)
var_dump($a > 3);     // bool(true)

3.2 太空船運算符(<=>)

太空船運算符是PHP7新增的運算符,用于比較兩個表達式:

  • 如果\(a < \)b,返回-1
  • 如果\(a == \)b,返回0
  • 如果\(a > \)b,返回1
echo 1 <=> 1; // 0
echo 1 <=> 2; // -1
echo 2 <=> 1; // 1

// 字符串比較也適用
echo "a" <=> "a"; // 0
echo "a" <=> "b"; // -1
echo "b" <=> "a"; // 1

四、邏輯運算符

邏輯運算符用于組合條件語句,PHP支持以下邏輯運算符:

運算符 名稱 示例 結果
and 邏輯與 \(a and \)b 如果\(a和\)b都為true返回true
or 邏輯或 \(a or \)b 如果\(a或\)b有一個為true返回true
xor 邏輯異或 \(a xor \)b 如果\(a或\)b有且僅有一個為true返回true
&& 邏輯與 \(a && \)b 與and相同,但優先級更高
|| 邏輯或 \(a \|\| \)b 與or相同,但優先級更高
! 邏輯非 !$a 如果$a不為true返回true

4.1 邏輯運算示例

$a = true;
$b = false;

var_dump($a and $b);   // bool(false)
var_dump($a or $b);    // bool(true)
var_dump($a xor $b);   // bool(true)
var_dump(!$a);         // bool(false)
var_dump($a && $b);    // bool(false)
var_dump($a || $b);    // bool(true)

4.2 短路求值特性

邏輯運算符具有短路求值特性:

function foo() {
    echo "foo called";
    return false;
}

// 因為第一個操作數為false,&&運算符不會調用foo()
false && foo();

// 因為第一個操作數為true,||運算符不會調用foo()
true || foo();

五、字符串運算符

PHP有兩個字符串運算符:

運算符 名稱 示例 結果
. 連接 \(a . \)b 連接\(a和\)b
.= 連接賦值 \(a .= \)b \(b連接到\)a后面

5.1 字符串連接示例

$str1 = "Hello";
$str2 = "World";
echo $str1 . " " . $str2; // 輸出"Hello World"

$str1 .= " PHP";
echo $str1; // 輸出"Hello PHP"

六、數組運算符

PHP提供了一些專門用于數組的運算符:

運算符 名稱 示例 結果
+ 聯合 \(a + \)b \(a和\)b的聯合
== 相等 \(a == \)b 如果\(a和\)b具有相同的鍵/值對返回true
=== 全等 \(a === \)b 如果\(a和\)b具有相同的鍵/值對且順序和類型相同
!= 不等 \(a != \)b 如果\(a不等于\)b返回true
<> 不等 \(a <> \)b 與!=相同
!== 不全等 \(a !== \)b 如果\(a不全等于\)b返回true

6.1 數組運算示例

$a = ["a" => "apple", "b" => "banana"];
$b = ["a" => "pear", "b" => "banana", "c" => "cherry"];

// 聯合運算,保留左邊數組的鍵
$c = $a + $b;
print_r($c); // 輸出Array([a] => apple [b] => banana [c] => cherry)

// 數組比較
var_dump($a == $b);  // bool(false)
var_dump($a === $b); // bool(false)

七、其他運算符

7.1 三元運算符(?:)

三元運算符是if-else語句的簡寫形式:

$age = 20;
$status = ($age >= 18) ? "成人" : "未成年";
echo $status; // 輸出"成人"

7.2 空合并運算符(??)

PHP7新增的空合并運算符用于簡化isset()檢查:

// 傳統寫法
$username = isset($_GET['user']) ? $_GET['user'] : 'guest';

// 使用空合并運算符
$username = $_GET['user'] ?? 'guest';

7.3 錯誤控制運算符(@)

@運算符用于抑制表達式可能產生的錯誤信息:

$file = @file('non_existent_file'); // 不會顯示錯誤信息

八、運算符優先級

當多個運算符出現在同一個表達式中時,PHP會按照運算符優先級來決定運算順序。以下是一些常見運算符的優先級(從高到低):

  1. clone, new
  2. **
  3. ++, –, ~, (int), (float), (string), (array), (object), (bool), @
  4. instanceof
  5. !
  6. *, /, %
  7. +, -, .
  8. <<, >>
  9. <, <=, >, >=
  10. ==, !=, ===, !==, <>
  11. &
  12. ^
  13. |
  14. &&
  15. ||
  16. ??
  17. ? :
  18. =, +=, -=, *=, **=, /=, .=, %=, &=, |=, ^=, <<=, >>=
  19. and
  20. xor
  21. or

可以使用括號來明確指定運算順序:

$a = 1 + 2 * 3;   // 7 (乘法優先級高于加法)
$b = (1 + 2) * 3; // 9 (括號改變優先級)

九、總結

PHP提供了豐富的運算符類型,包括:

  1. 算術運算符:用于基本數學運算
  2. 賦值運算符:用于變量賦值
  3. 比較運算符:用于值比較
  4. 邏輯運算符:用于邏輯判斷
  5. 字符串運算符:用于字符串操作
  6. 數組運算符:用于數組操作
  7. 其他特殊運算符:如三元運算符、空合并運算符等

掌握這些運算符的用法和優先級是編寫高效PHP代碼的基礎。在實際開發中,合理使用運算符可以簡化代碼并提高可讀性。建議開發者通過大量練習來熟悉各種運算符的行為特性,特別是類型轉換和比較運算中的特殊情況。 “`

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女