Toán tử là gì? Hãy xem xét ví dụ này 1 + 3 = 4, tại đây 1 và 3 được gọi là toán hạng còn phép + được gọi là toán tử. Trong PHP có hỗ trợ các loại toán tử sau:
- Toán tử số học (Arithmetic operators)
- Toán tử so sánh (Comparison operators)
- Toán tử gắn (Assignment operators)
- Toán tử gắn có điều kiện (Conditional assignment operators)
- Toán tử tăng dần / giảm dần (Increment / Decrement operators)
- Toán tử chuỗi (String operators)
- Toán tử mảng (Array operators)
- Toán tử logic (Logical operators)
Toán tử số học
Các toán tử số học được sử dụng với các giá trị số để thực hiện các phép toán phổ biến như cộng, trừ, nhân, chia, v.v. Ví dụ với biến $x = 15, $y = 5 kết quả thử nghiệm các toán tử như sau:
Toán tử | Mô tả | Kết quả |
+ | Phép cộng hai toán hạng | $x + $y = 20 |
– | Phép trừ hai toán hạng | $x – $y = 10 |
* | Phép nhân hai toán hạng | $x * $y = 75 |
/ | Phép chia hai toán hạng | $x / $y = 3 |
% | Kết quả là số dư của $x chia $y | $x % $y = 0 |
** | Kết quả của phép lũy thừa 15 ^ 5 | $x ** $y = 759375 |
Toán tử so sánh
Các toán tử so sánh được sử dụng để điều khiển điều kiện rẽ nhánh. Trong ngôn ngữ lập trình PHP có hỗ trợ các toán tử so sánh như sau:
Toán tử | Mô tả | Kết quả |
== | So sánh hai giá trị bằng nhau | 5 == 5 => true 5 == ‘5’ => true |
=== | So sánh hai giá trị vừa bằng nhau, vừa cùng kiểu dữ liệu | 5 === 5 => true 5 === ‘5’ => false |
!= | So sánh hai giá trị khác nhau | 1 != 2 => true |
!== | So sánh hai giá trị khác nhau hoặc khác kiểu dữ liệu | 1 !== 2 => true 1 !== ‘1’ => true |
<> | So sánh hai giá trị khác nhau | 1 <> 2 => true |
> | So sánh giá trị toán hạng bên trái có lớn hơn giá trị toán hạng bên phải hay không | 3 > 2 => true |
< | So sánh giá trị toán hạng bên trái có nhỏ hơn giá trị toán hạng bên phải hay không | 1 < 3 => true |
>= | So sánh giá trị toán hạng bên trái có lớn hơn hoặc bằng giá trị toán hạng bên phải hay không | 3 >= 2 => true 3 >= 3 => true |
<= | So sánh giá trị toán hạng bên trái có nhỏ hơn hoặc bằng giá trị toán hạng bên phải hay không | 1 <= 3 => true 1 <= 1 => true |
<=> | So sánh 3 phép kết hợp, nếu bằng nhau trả về 0, bên trái nhỏ hơn trả về -1, bên trái lớn hơn trả về 1 | 1 <=> 1 => 0 1 <=> 2 => -1 2 <=> 1 => 1 |
Toán tử gắn
Các toán tử gắn trong PHP được sử dụng với các giá trị số, nó vừa kết hợp phép toán số học và phép gắn để ghi giá trị vào cho một biến. Ví dụ với biến $x = 4, $y = 2. Trong PHP có hỗ trợ các toán tử gắn sau:
Toán tử | Mô tả | Kết quả |
= | Phép gắn giá trị biểu thức bên phải vào toán hạng bên trái | $x = $y => $x = 2 |
+= | Phép cộng hai toán hạng và gắn vào toán hạng bên trái | $x += $y => $x = 6 |
-= | Phép trừ hai toán hạng và gắn vào toán hạng bên trái | $x -= $y => 2 |
*= | Phép nhân hai toán hạng và gắn vào toán hạng bên trái | $x *= $y => $x = 8 |
/= | Phép chia hai toán hạng và gắn vào toán hạng bên trái | $x /= $y => $x = 2 |
%= | Phép chia lấy số dư hai toán hạng và gắn vào toán hạng bên trái | $x %= $y => $x = 0 |
Toán tử gắn có điều kiện
Toán tử | Mô tả | Kết quả |
?: | Cú pháp: $x = bieuthuc1 ? bieuthuc2 : bieuthuc3 Nếu biểu thức 1 đúng, thì gắn giá trị biểu thức 2 cho biến $x, ngược lại thì gắn giá trị biểu thức 3 cho biến $x | $x = 1 < 3 ? ‘A’ : ‘B’ => $x = ‘A’ |
?? | Cú pháp: $x = bieuthuc1 ?? bieuthuc2 Nếu biểu thức 1 có tồn tại và giá trị khác NULL, thì gắn giá trị biểu thức 1 cho biến $x, ngược lại thì gắn gía trị biếu thức 2 cho biến $x | $x = null ?? 1 => $x = 1 |
Toán tử tăng dần / giảm dần
Các toán tử tăng dần / giảm dần được sử dụng với các giá trị số để thực hiện việc tăng dần hoặc giảm dần giá trị. Ví dụ với biến $x = 15, $y = 5 kết quả thử nghiệm các toán tử như sau:
Toán tử | Mô tả | Kết quả |
++$x | Phép cộng dồn tăng lên 1 đơn vị, cộng trước trả về sau | ++$x => $x = 16 |
$x++ | Phép cộng dồn tăng lên 1 đơn vị, trả về trước cộng sau | $x++ => $x = 15, sau khi chạy xong toán tử mới $x = 16 |
–$y | Phép tự trừ giảm xuống 1 đơn vị, trừ trước trả về sau | –$y => $y = 4 |
$x– | Phép tự trừ giảm xuống 1 đơn vị | $y– => $y = 5, sau khi chạy xong toán tử mới $y = 4 |
Toán tử chuỗi
Toán tử | Mô tả | Kết quả |
. | Phép nối chuỗi | $x = ‘hel’ . ‘lo’ => $x = ‘hello’ |
.= | Phép nối chuỗi và kết hợp phép gắn | $x = ‘hello’ $x .= ‘ world’ => $x = ‘hello world’ |
Mời các bạn tìm hiểu tiếp về điều kiện rẽ nhánh trong PHP ở bài viết tiếp theo nhé!