Toán tử Ternary (Ba ngôi)
Toán tử Ternary được sử dụng để thay thế câu lệnh if else thành một câu lệnh duy nhất.
Cú pháp
(condition) ? expression1 : expression2;
Biểu thức tương đương
if(condition) {
return expression1;
} else {
return expression2;
}
Nếu điều kiện đúng, nó trả về kết quả của expression1, ngược lại trả về kết quả của expression2. void không được phép trong điều kiện hoặc biểu thức.
Toán tử Null coalescing (Gộp null)
Toán tử Null coalescing được sử dụng để cung cấp giá trị không null trong trường hợp biến là null.
Cú pháp
(variable) ?? expression;
Biểu thức tương đương
if(isset(variable)) {
return variable;
} else {
return expression;
}
Nếu biến là null, nó trả về kết quả của expression.
Ví dụ
<!DOCTYPE html>
<html>
<head>
<title>PHP Example</title>
</head>
<body>
<?php
// lấy giá trị $_GET['user'] và trả về 'not passed'
// nếu username không được truyền
$username = $_GET['username'] ?? 'not passed';
print($username);
print("<br/>");
// Mã tương đương sử dụng toán tử ternary
$username = isset($_GET['username']) ? $_GET['username'] : 'not passed';
print($username);
print("<br/>");
?>
</body>
</html>
Kết quả
not passed not passed