Đối sánh biểu thức là một tính năng mới được thêm vào trong PHP 8. Nó rất giống với các câu lệnh switch-case, nhưng nó cung cấp ngữ nghĩa an toàn hơn.
-
Biểu thức so khớp không sử dụng cấu trúc 'trường hợp và ngắt' của các câu lệnh switch-case. Nó hỗ trợ các điều kiện chung và trả về một giá trị thay vì nhập một khối mã mới.
-
Chúng tôi có thể lưu trữ kết quả đối sánh trong một biến vì nó là một biểu thức.
-
Biểu thức so khớp không cần câu lệnh ngắt như switch . Nó chỉ hỗ trợ biểu thức một dòng.
Ví dụ:PHP 7 sử dụng câu lệnh chuyển đổi
<?php
switch (1.0) {
case '1.0':
$result = "Hello World!";
break;
case 1.0:
$result = "Looks good";
break;
}
echo $result;
?> Đầu ra
Hello World!
Ví dụ:Đoạn mã PHP 7 trên sử dụng biểu thức đối sánh PHP 8
<?php
echo match (1.0) {
'1.0' => "Hello World!",
1.0 => "Looks Good!",
};
?> Đầu ra
Looks Good!
Ví dụ:Sử dụng biểu thức so khớp PHP 8
<?php
echo match (2) {
1 => 'Company',
2 => 'Department',
3 => 'Employee',
};
?> Đầu ra
Employee