PHP là ngôn ngữ scripting và nó không yêu cầu việc phải gợi ý kiểu dữ liệu khi khai báo biến. Từ các phiên bản 5.x trước đây PHP đã giới thiệu tính năng gợi ý kiểu dữ liệu cho biến hay còn gọi là type hinting. Phiên bản PHP 7 giới thiệu thêm tính năng return type áp dụng cho hàm:
Ví dụ:
function double(int $value)
{
return 2 * $value;
}
Rất nhiều người cho rằng việc giới thiệu Type Hint trong PHP 7 là một sự cải tiến đáng kể nhất là khi lập trình viên phải viết các lớp (class) kế thừa các lớp khác hoặc implement một interface. Inheritance (kế thừa) và interface đều yêu cầu tới sự chính xác trong khi khai báo kiểu dữ liệu cho tham số đầu vào hay kết quả trả về.
Ảnh: Toán tử php7
Tuy nhiên một số ý kiến lại cho rằng việc này sẽ khiến PHP thành một ngôn ngữ có cú pháp quá chặt chẽ giống như các ngôn ngữ Java hay C khiến mất đi sự linh hoạt trong ngôn ngữ này.
Toán tử này được ra đời để giải quyết một vấn đề rất hay gặp khi lập trình đó là so sánh 2 số. Ví dụ, trong hàm compare ở dưới chúng ta cần so sảnh 2 biến $a và $b và giá trị của hàm này sẽ là 1 trong 3 giá trị 0, 1 hoặc -1.
Ví dụ:
function compare($a , $b) {
return ($a < $b) ? -1 : (($a > $b) ? 1 : 0);
}
Với cách viết cũ này sẽ chỉ tiện dụng nếu như $a hoặc $b là các biến trực tiếp như ở trên. Tuy nhiên trong trường hợp $a và $b không phải là biến thông thường mà là các biểu thức (expression) phức tạp thì việc so sánh này cần phải tách ra thành nhiều dòng lệnh khác nhau. Trong PHP 7 việc so sánh này trở lên đơn giản chỉ với một dòng lệnh:
$a <=> $b;
Ảnh: Toán tử PHP7
Toán tử Null Coalesce tạm dịch là toán tử hợp nhất null được giới thiệu để giúp việc gán giá trị cho một biến trở nên đơn giản hơn khi khi biểu thức gán có chứa biến với sự tồn tại chưa được xác định. Ví dụ ở dưới biến $a sẽ có giá trị là giá trị của biến $b hoặc default nếu biến $b chưa tồn tại:
$a = isset($b) ? $b : “default”;
Sử dụng toán tử hợp nhất null, đoạn code trên sẽ trở lên ngắn gọn hơn như sau:
$a = $b ?? “default”;
Đây là một số toán tử mới của PHP 7. Mình sưu tầm từ nhiều nguồn nên có thiếu sót gì các bạn để lại comment cho mình sửa nhé.
Ở bài tiếp theo chúng ta sẽ tiếp tục tìm hiểu về các hàm khác trong PHP 7.
Các bạn tiếp tục theo dõi các bài học của PHP 7 cùng với chúng tôi nhé
Chúc các bạn học tốt
Nguồn :"st"
Biên tập: Thiết kế website chuyên nghiệp XJK
Designed by: Giải pháp kinh doanh trực tuyến