Share Các tính năng đáng chú ý trong phiên bản PHP 8.0 sắp ra mắt

filiallion

Administrator
Staff member
Administrator
Messages
585
Points
10
Language
Tiếng Việt
Phiên bản PHP chính thức mới nhất hiện nay là PHP 7.4 với nhiều cải tiến đáng chú ý, các bạn có thể tìm hiểu thêm các thay đổi này tại bài viết "Các tính năng mới đáng chú ý trong phiên bản PHP 7.4". Theo những gì mà tổ chức PHP đang thực hiện thì phiên bản tiếp theo PHP 8.0 sẽ sớm ra mắt chính thức trong thời gian tới. Hiện tại, các bạn có thể tải về sử dụng phiên bản PHP 8.0 Beta 1 tại địa chỉ https://downloads.php.net/~carusogabriel. Theo thông tin được biết, phiên bản PHP 8.0 sẽ chính thức ra mắt vào tháng 11/2020 sắp tới.

PHP 8.0 với rất nhiều cải tiến về hiệu năng sẽ giúp cho ứng dụng web của các bạn nhẹ nhàng hơn, chạy nhanh hơn rất nhiều với sự hỗ trợ của trình biên dịch JIT vốn rất nổi tiếng trên Java. Ngoài ra, với sự nâng cấp về mã lệnh PHP sẽ giúp cho các bạn lập trình viên có thêm nhiều tuỳ chọn trong quá trình sử dụng PHP, góp phần giải quyết những khó khăn trong quá trình lập trình mà các phiên bản PHP trước đây không đáp ứng được.

1. Khai báo nhiều kiểu dữ liệu:

Với phiên bản PHP trước đây thì kiểu dữ liệu của tham số hay kiểu dữ liệu trả về của phương thức chỉ được khai báo một kiểu duy nhất, thì nay với phiên bản PHP 8.0 các bạn có thể khai báo nhiều hơn một kiểu dữ liệu, ví dụ:
PHP:
class Member
{
    public function get(int|string $id): User|Account
    {}
}
2. Khai báo kiểu dữ liệu trả về static:

Trước phiên bản PHP 8.0, các bạn có thể khai báo kiểu dữ liệu trả về của phương thức nhưng chưa hỗ trợ kiểu static. Với phiên bản PHP 8.0 thì static đã được hỗ trợ khai báo cho các phương thức.

3. Toán tử nullsafe:

Nếu trước đây các bạn muốn kiểm tra giá trị nếu không thoả mãn điều kiện sẽ nhận giá trị NULL thì các bạn sẽ viết lệnh PHP như ví dụ sau:
PHP:
$result = $object->has() ? $object->get() : null;
Trong PHP 8.0, các bạn có thể viết lại như sau:
PHP:
$result = $object->has()?->get();
4. Đặt tên cho tham số của hàm, phương thức:

Đây là một tính năng hoàn toàn mới, với tính năng này các bạn không cần phải quan tâm tới thứ tự các tham số truyền vào của hàm và phương thức mà hoàn toàn dựa vào tên của nó. Ví dụ tôi định nghĩa một hàm đơn giản như sau:
PHP:
function get($a, $b, $c)
{}
Bây giờ, tôi gọi hàm này theo cách mới trong PHP 8.0:
PHP:
get(
    a: 'Value a',
    b: 'Value b',
    c: 'Value c'
);
5. Khai báo thuộc tính của lớp ngay trong phương thức khởi tạo:

Trong PHP, các bạn phải khai báo thuộc tính của lớp trước khi sử dụng nó trong các phương thức, bao gồm cả phương thức khởi tạo. Với PHP 8.0 thì các bạn còn có thể khai báo các thuộc tính của lớp ngay từ phương thức khởi tạo mà không cần khai báo trước đó, ví dụ:
PHP:
class User
{
    public function __construct(protected int $id, protected string $username)
    {}
}
Trên đây chỉ là một vài tính năng mới của PHP 8.0 mà tôi giới thiệu với các bạn để các bạn có cái nhìn tổng quan về sự thay đổi rất hay ở phiên bản PHP mới nhất này.
 
Back
Top