Menu
CoddyTech

Toán tử so sánh

Thuộc phần Kiến thức cơ bản trong hành trình PHP của Coddy. Bài học 23 trên 71.

Toán tử so sánh (comparison operators) cho phép bạn so sánh hai giá trị và nhận kết quả logic: true hoặc false. Những toán tử này rất cần thiết để đưa ra quyết định trong đoạn code.

PHP cung cấp một số toán tử so sánh để kiểm tra mối quan hệ giữa các giá trị:

Toán tửÝ nghĩaVí dụKết quả
<Nhỏ hơn5 < 10true
>Lớn hơn5 > 10false
<=Nhỏ hơn hoặc bằng5 <= 5true
>=Lớn hơn hoặc bằng10 >= 5true
<?php
$age = 18;
$isAdult = $age >= 18;    // true
$isMinor = $age < 18;     // false

$score = 75;
$passed = $score >= 60;   // true
?>

Để xem kết quả của phép so sánh, bạn có thể dùng var_dump(), hàm này hiển thị cả kiểu dữ liệu lẫn giá trị. Lưu ý rằng var_dump() tự động xuống dòng sau mỗi lần gọi, nên bạn không cần tự thêm dòng mới:

<?php
var_dump(10 > 5);   // Đầu ra: bool(true)
var_dump(3 >= 7);   // Đầu ra: bool(false)
?>

Mỗi lần gọi var_dump() sẽ tự động in kết quả trên một dòng riêng, vì vậy gọi hàm này nhiều lần sẽ tạo ra đầu ra được phân tách rõ ràng mà không cần thêm code.

Các toán tử này hoạt động với cả số và chuỗi. Trong bài học tiếp theo, bạn sẽ tìm hiểu về các toán tử so sánh bằng để kiểm tra xem các giá trị có bằng nhau hoặc giống hệt nhau hay không.

challenge icon

Thử thách

Dễ

Đọc hai số từ đầu vào: một score và một passingMark.

Dùng các toán tử so sánh để đánh giá những điều kiện sau và in kết quả của từng điều kiện bằng var_dump(), mỗi kết quả trên một dòng mới:

  1. Kiểm tra xem score có lớn hơn passingMark không
  2. Kiểm tra xem score có nhỏ hơn passingMark không
  3. Kiểm tra xem score có lớn hơn hoặc bằng passingMark không
  4. Kiểm tra xem score có nhỏ hơn hoặc bằng passingMark không

Ví dụ:

Nếu đầu vào là 75 và 60, đầu ra sẽ là:

bool(true)
bool(false)
bool(true)
bool(false)

Giải thích:

  • 75 > 60 là đúng
  • 75 < 60 là sai
  • 75 >= 60 là đúng
  • 75 <= 60 là sai

Tự làm thử

<?php
// Đọc đầu vào
$score = intval(fgets(STDIN));
$passingMark = intval(fgets(STDIN));

// TODO: Viết code bên dưới
// Dùng toán tử (operator) so sánh và var_dump() để kiểm tra:
// 1. Liệu score có lớn hơn passingMark không
// 2. Liệu score có nhỏ hơn passingMark không
// 3. Liệu score có lớn hơn hoặc bằng passingMark không
// 4. Liệu score có nhỏ hơn hoặc bằng passingMark không

?>
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức cơ bản

Tự luyện tập: Trình biên dịch PHP online