Các loại toán tử (operator) trong PHP

Đây là bài 12/53 bài của series môn học Lập trình Web PHP

Toán tử (operator) được sử dụng để thực hiện các thao tác trên các biến (variable) và giá trị (value). Trong bài này, chúng ta sẽ tìm hiểu về các loại toán tử (operator) trong PHP. Có nhiều loại toán tử được hỗ trợ trong PHP như:

    • Toán tử số học (arithmetic operator)
    • Toán tử gán (assignment operator)
    • Toán tử so sánh (comparison operator)
    • Toán tử tăng/giảm (increment/decrement operator)
    • Toán tử logic (logical operator)
    • Toán tử trên chuỗi (string operator)
    • Toán tử trên mảng (array operator)

Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.

1. Toán tử số học (arithmetic operator)

Toán tử số học sử dụng với các giá trị số để thực hiện các phép toán số học phổ biến như cộng, trừ, nhân, chia,…

Toán tửÝ nghĩaVí dụ
+Cộng 2 toán hạng$x + $y
Trừ 2 toán hạng$x – $y
*Nhân 2 toán hạng$x * $y
/Chia 2 toán hạng$x / $y
%Trả về phần dư khi chia toán tử bên trái cho toán tử bên phải$x % $y
**Toán tử bên trái lũy thừa toán tử bên phải$x ** $y

Ví dụ

<?php
$x = 10;  
$y = 6;
echo '$x + $y = '. $x + $y.'<br>';
echo '$x - $y = '. $x - $y.'<br>';
echo '$x * $y = '. $x * $y.'<br>';
echo '$x / $y = '. $x / $y.'<br>';
echo '$x % $y = '. $x % $y.'<br>';
echo '$x ** $y = '. $x ** $y;
?>
Kết quả
$x + $y = 16
$x - $y = 4
$x * $y = 60
$x / $y = 1.6666666666667
$x % $y = 4
$x ** $y = 1000000

2. Toán tử gán (assignment operator)

Toán tử gán được sử dụng để gán giá trị cho một biến. Toán tử gán cơ bản trong PHP là “=“. Ngoài ra, PHP còn hỗ trợ một số toán tử gán tắt.

Toán tử (operator)Ví dụTương đương
=$x = $y$x = $y
+=$x += $y$x = $x + $y
-=$x -= $y$x = $x – $y
*=$x *= $y$x = $x * $y
/=$x /= $y$x = $x / $y
%=$x %= $y$x = $x % $y

Ví dụ

<?php
$x = 10;  
$y = 6;
$x = $y;
echo '$x = $y then $x = '. $x.'<br>';
$x += $y;
echo '$x += $y then $x = '. $x.'<br>';
$x -= $y;
echo '$x -= $y then $x = '. $x.'<br>';
$x *= $y;
echo '$x *= $y then $x = '. $x.'<br>';
$x /= $y;
echo '$x /= $y then $x = '. $x.'<br>';
$x %= $y;
echo '$x %= $y then $x = '. $x;
?>
Kết quả
$x = $y then $x = 6
$x += $y then $x = 12
$x -= $y then $x = 6
$x *= $y then $x = 36
$x /= $y then $x = 6
$x %= $y then $x = 0

3. Toán tử so sánh (comparison operator)

Toán tử so sánh trong PHP được sử dụng để so sánh hai giá trị (số hoặc chuỗi).

Toán tử (operator)Ý nghĩaVí dụ
==Trả về True nếu cả 2 toán hạng bằng nhau và ngược lại trả về False$x == $y
===Trả về True nếu cả 2 toán hạng bằng nhau và 2 toán hạng có cùng kiểu dữ liệu. Ngược lại, trả về False$x === $y
Trả về True nếu toán hạng bên trái lớn hơn toán hạng bên phải và ngược lại trả về False$x > $y
Trả về True nếu toán hạng bên trái nhỏ hơn toán hạng bên phải và ngược lại trả về False$x < $y
!=Trả về True nếu 2 toán hạng không bằng nhau và ngược lại trả về False$x != $y
!==Trả về True nếu 2 toán hạng không bằng nhau hoặc khác kiểu dữ liệu. Ngược lại, trả về False$x !== $y
>=Trả về True nếu toán hạng bên trái lớn hơn hoặc bằng toán hạng bên phải và ngược lại trả về False$x >= $y
<=Trả về True nếu toán hạng bên trái nhỏ hơn hoặc bằng toán hạng bên phải và ngược lại trả về False$x <= $y
<> Trả về True nếu 2 toán hạng không bằng nhau$x <> $y
<=>Trả về -1 nếu toán hạng bên trái nhỏ hơn bên phải, 0 nếu 2 toán hạng bằng nhau, 1 nếu toán hạng bên trái lớn hơn bên phải. Được giới thiệu trong PHP 7.$x <=> $y

Ví dụ

<?php
$x = 10;  
$y = 6;
echo '$x(10) == $y(6) is ';
var_dump($x == $y);
echo '<br>';

echo '$x(10) === $y(6) is ';
var_dump($x === $y);
echo '<br>';

echo '$x(10) > $y(6) is ';
var_dump($x > $y);
echo '<br>';

echo '$x(10) < $y(6) is ';
var_dump($x < $y);
echo '<br>';

echo '$x(10) != $y(6) is ';
var_dump($x != $y);
echo '<br>';

echo '$x(10) !== $y(6) is ';
var_dump($x !== $y);
echo '<br>';

echo '$x(10) >= $y(6) is ';
var_dump($x >= $y);
echo '<br>';

echo '$x(10) <= $y(6) is ';
var_dump($x <= $y);
echo '<br>';

echo '$x(10) <> $y(6) is ';
var_dump($x <> $y);
echo '<br>';

echo '$x(10) <=> $y(6) is ';
var_dump($x <=> $y);
echo '<br>';
?>
Kết quả
$x(10) == $y(6) is bool(false)
$x(10) === $y(6) is bool(false)
$x(10) > $y(6) is bool(true)
$x(10) < $y(6) is bool(false)
$x(10) != $y(6) is bool(true)
$x(10) !== $y(6) is bool(true)
$x(10) >= $y(6) is bool(true)
$x(10) <= $y(6) is bool(false)
$x(10) <> $y(6) is bool(true)
$x(10) <=> $y(6) is int(1)

4. Toán tử tăng/giảm (increment/decrement operator)

Toán tử tăng trong PHP được sử dụng để tăng giá trị của một biến. Toán tử giảm trong PHP được sử dụng để giảm giá trị của một biến.

Toán tửÝ nghĩa
++$xTăng $x lên 1 giá trị rồi trả về $x
$x++Trả về $x rồi tăng $x lên 1 giá trị
–$xGiảm $x xuống 1 giá trị rồi trả về $x
$x–Trả về $x rồi giảm $x xuống 1 giá trị

Ví dụ

<?php
$x = 10;
echo '$x++: '.$x++.'<br>';
$x = 10;
echo '++$x: '.++$x.'<br>';
$x = 10;
echo '$x--: '.$x--.'<br>';
$x = 10;
echo '--$x: '.--$x.'<br>';
?>
Kết quả
$x++: 10
++$x: 11
$x--: 10
--$x: 9

5. Toán tử logic (logical operator)

Bên dưới là các toán tử logic được hỗ trợ trong PHP.

Toán tửVí dụÝ nghĩa
and$x and $yTrả về True nếu cả $x và $y là True
or$x or $yTrả về True nếu $x hoặc $y là True
xor$x xor $yTrả về True nếu chỉ $x hoặc $y là True (không phải cả $x, $y là True)
&&$x && $yTrả về True nếu cả $x và $y là True
||$x || $yTrả về True nếu $x hoặc $y là True
!!$xTrả về True nếu $x không phải True

Ví dụ

<?php
$x = 10;
$y = 6;
$result = $x==10 and $y==6;
echo '$x==10 and $y==6 is ';
var_dump($result);
echo '<br>';

$result = $x==10 or $y==6;
echo '$x==10 or $y==6 is ';
var_dump($result);
echo '<br>';

$result = ($x==10 xor $y==6);
echo '($x==10 xor $y==6) is ';
var_dump($result);
echo '<br>';

$result = $x==10 && $y==6;
echo '$x==10 && $y==6 is ';
var_dump($result);
echo '<br>';

$result = $x==10 || $y==6;
echo '$x==10 || $y==6 is ';
var_dump($result);
echo '<br>';

$result = $x!=10;
echo '$x!=10 is ';
var_dump($result);
?>
Kết quả
$x==10 and $y==6 is bool(true)
$x==10 or $y==6 is bool(true)
($x==10 xor $y==6) is bool(false)
$x==10 && $y==6 is bool(true)
$x==10 || $y==6 is bool(true)
$x!=10 is bool(false)

6. Toán tử trên chuỗi (string operator)

PHP hỗ trợ 2 toán tử đặc biệt để thao tác trên chuỗi (string).

Toán tửVí dụÝ nghĩa
.$txt1 . $txt2Nối chuỗi $txt1 và $txt2 thành một chuỗi mới
.=$txt1 .= $txt2Nối chuỗi $txt2 vào chuỗi $txt1

Ví dụ

<?php
$txt1 = "Welcome to";
$txt2 = " gochocit.com!";
$result1 = $txt1 . $txt2;
$txt1 .= $txt2;
echo '$txt1 . $txt2: '.$result1.'<br>';
echo '$txt1 .= $txt2 then $txt1: '.$txt1;
?>
Kết quả
$txt1 . $txt2: Welcome to gochocit.com!
$txt1 .= $txt2 then $txt1: Welcome to gochocit.com!

7. Toán tử trên mảng (array operator)

Toán tử trên mảng trong PHP dùng để so sánh mảng.

Toán tửVí dụÝ nghĩa
+$x + $yKết hợp mảng $x và $y
==$x == $yTrả về True nếu mảng $x và $y có các cặp key/value giống nhau
===$x === $yTrả về True nếu mảng $x và $y có các cặp key/value giống nhau, kể cả thứ tự trong mảng và có cùng kiểu dữ liệu
!=$x != $yTrả về True nếu mảng $x không bằng mảng $y
<> $x <> $yTrả về True nếu mảng $x không bằng mảng $y
!==$x !== $yTrả về True nếu mảng $x không giống mảng $y

Ví dụ

<?php
$x = array("a" => "red", "b" => "green");
$y = array("c" => "blue", "d" => "yellow");

echo '$x + $y: ';
print_r($x + $y);
echo '<br>';

echo '$x == $y is ';
var_dump($x == $y);
echo '<br>';

echo '$x === $y is ';
var_dump($x === $y);
echo '<br>';

echo '$x != $y is ';
var_dump($x != $y);
echo '<br>';

echo '$x <> $y is ';
var_dump($x <> $y);
echo '<br>';

echo '$x!==$y is ';
var_dump($x !== $y);
?>
Kết quả
$x + $y: Array ( [a] => red [b] => green [c] => blue [d] => yellow )
$x == $y is bool(false)
$x === $y is bool(false)
$x != $y is bool(true)
$x <> $y is bool(true)
$x!==$y is bool(true)

Ngoài các toán tử đã trình bày, PHP còn hỗ trợ các toán tử như toán tử gán có điều kiện (conditional assignment operator), toán tử instanceof,… Các toán tử này sẽ được giới thiệu ở những bài sau của series môn học Lập trình Web PHP.

5/5 - (1 bình chọn)
Bài trước và bài sau trong môn học<< Sử dụng kiểu dữ liệu boolean trong PHPXây dựng và sử dụng hàm (function) trong PHP >>
Chia sẻ trên mạng xã hội:

Để lại một bình luận

Lưu ý:

1) Vui lòng bình luận bằng tiếng Việt có dấu.

2) Khuyến khích sử dụng tên thật và địa chỉ email chính xác.

3) Mọi bình luận trái quy định sẽ bị xóa bỏ.