Toán tử <=>
trong PHP, còn được gọi là toán tử so sánh kết hợp (spaceship operator), được sử dụng để so sánh hai giá trị với nhau. Nó trả về một trong ba giá trị sau:
- 0 nếu hai giá trị bằng nhau.
- -1 nếu giá trị bên trái nhỏ hơn giá trị bên phải.
- 1 nếu giá trị bên trái lớn hơn giá trị bên phải.
Cú pháp:
Ý nghĩa trả về:
- Nếu
$a
nhỏ hơn $b
, kết quả là -1
.
- Nếu
$a
bằng $b
, kết quả là 0
.
- Nếu
$a
lớn hơn $b
, kết quả là 1
.
Ví dụ:
echo 5 10; // Kết quả: -1
echo 10 10; // Kết quả: 0
echo 15 10; // Kết quả: 1
Ứng dụng chính:
Toán tử <=>
rất hữu ích trong các hàm cần so sánh, chẳng hạn như khi bạn sử dụng trong hàm sắp xếp (usort
) để viết các hàm so sánh một cách ngắn gọn hơn.
Ví dụ sử dụng trong hàm usort
:
$array = [5, 2, 9, 3, 7];
usort($array, function($a, $b) {
return $a $b; // So sánh $a và $b để sắp xếp
});
print_r($array); // Kết quả: [2, 3, 5, 7, 9]
Kết luận:
Toán tử <=>
giúp đơn giản hóa việc so sánh hai giá trị và đặc biệt hữu ích khi làm việc với các hàm sắp xếp trong PHP.