fbpx
  • Giới thiệu
  • Kiểm tra tên miền
  • Cloud Server
  • Hosting giá rẻ
  • SSL
  • Chính sách bảo mật
  • Liên Hệ
CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO - Web Hosting, Dịch vụ máy chủ, cho thuê máy chủ, thuê chỗ đặt máy chủ, cho thuê VPS, máy chủ ảo, Cloud hosting, VPS Cloud, Email hosting, Tên miền, Đại lý hosting
  • Hosting giá rẻ
  • Webmasters
  • Kiến thức Hosting
  • Khuyến mãi
    • Tinohost
    • Thông báo
  • Hướng dẫn
    • Hướng dẫn chung
  • Kiếm tiền online
TinoHost Blog
  • Hosting giá rẻ
  • Webmasters
  • Kiến thức Hosting
  • Khuyến mãi
    • Tinohost
    • Thông báo
  • Hướng dẫn
    • Hướng dẫn chung
  • Kiếm tiền online
TinoHost Blog
Trang chủ TinoHost Thông Báo

TinoHost hỗ trợ PHP 8.0: cải tiến với tính năng mới, hiệu suất mới

Hiện tại, tất cả hosting tại TinoHost đều đã bắt đầu hỗ trợ PHP 8.0.

được đăng bởi Hồng Nhi
trong chuyên mục Thông Báo
AA
tinohost-ho-tro-php8
Mục lục ẩn
1 PHP 8.0 là gì?
1.1 Giới thiệu PHP 8.0
1.2 PHP 8.0 có gì đặc biệt?
2 8 điểm nổi bật vượt trội của PHP 8.0
2.1 #1. Đối số được đặt tên (Named arguments)
2.2 #2. Thuộc tính (Attributes)
2.3 #3. Khuyến cáo thuộc tính hàm dựng (Constructor property promotion)
2.4 #4. Hợp nhất các kiểu (Union types)
2.5 #5. Trình biên dịch JIT (Just-in-Time Compiler)
2.6 #6. Toán tử Nullsafe (Nullsafe operator)
2.7 #7. Biểu thức đối sánh (Match expression)
2.8 #8. Nhất quán lỗi cho các chức năng nội bộ (Consistent type errors for internal functions)

PHP 8.0 là gì?

Giới thiệu PHP 8.0

PHP được xem là trợ lý đắc lực giúp người dùng vừa có thể làm việc với một đối tượng, vừa xử lý các tình huống bất ngờ nảy sinh.

Một phiên bản PHP phù hợp sẽ phát huy tối đa hiệu suất website của bạn.

Phiên bản PHP mặc định được kích hoạt cho các domain có sẵn hoặc tạo mới là PHP 7.4 . Tuy nhiên một số trường hợp mã nguồn yêu cầu hoạt động trên trên 1 phiên bản khác, bạn có thể chọn phiên bản PHP mong muốn cho website.

Được phát hành vào ngày 26/11/2020, PHP 8.0 là một bản cập nhật với nhiều ưu điểm vượt bậc của ngôn ngữ PHP. Do PHP 8.0 có nhiều sự thay đổi so với phiên bản trước đó, bạn sẽ cần thực hiện một số thao tác với code của mình để có thể vận hành trên PHP 8.0. Tuy nhiên, nếu bạn đã cập nhật từ PHP 7.0 trở lên, thao tác nâng cấp lên PHP 8.0 sẽ không quá phức tạp.

tinohost-ho-tro-php8Nhà đồng sáng lập và nhà tư vấn chính tại PHP Consulting Company – Stefan Priebsch – khuyên rằng việc chuyển sang PHP 8.0 đòi hỏi phải chuẩn bị nhiều hơn so với việc nâng cấp từ PHP 5.x lên PHP 7, do các vấn đề cũ đã bị xóa khỏi ngôn ngữ này. (Theo TechRepublic)

PHP 8.0 có gì đặc biệt?

PHP 8.0 sở hữu những tính năng mới gồm JIT, named arguments, union types, attributes, constructor property promotion, match expression, nullsafe operator mang đến hiệu suất cao lớn nhờ thay đổi cú pháp. Đồng thời, PHP 8.0 cũng có những cải tiến nhỏ trong kiểu hệ thống, xử lý lỗi và tính nhất quán.

Hiện tại, tất cả hosting tại TinoHost đều đã bắt đầu hỗ trợ PHP 8.0.

8 điểm nổi bật vượt trội của PHP 8.0

#1. Đối số được đặt tên (Named arguments)

Có thể đặt tên khi truyền tham số là điểm nổi bật đầu tiên của PHP 8.0.

Một function sở hữu từ 3 tham số trở lên sẽ dễ khiến developer lúng túng khi sử dụng vì không nhớ rõ thứ tự truyền hoặc ý nghĩa của từng tham số. Khắc phục tình trạng này, Named arguments sẽ giúp bạn:

  • Chuyển các giá trị vào một hàm, chỉ xác định các thông số bắt buộc, bỏ qua các thông số tùy chọn.
  • Các lập luận không phụ thuộc vào trật tự và tự ghi lại

tinohost-ho-tro-php8
#2. Thuộc tính (Attributes)

Với các phiên bản PHP 7 trở về trước, người dùng phải khai báo các thuộc tính một cách rõ ràng.

Ông Nikita Popov (tác giả của RFC) tiết lộ sẽ rút gọn lại cách khai báo các tham số bằng cách đặt trong các tham số ở hàm khởi tạo. Do đó, thay vì chú thích PHPDoc, thuộc tính của PHP 8.0 giúp bạn sử dụng siêu dữ liệu có cấu trúc với cú pháp gốc của PHP.

tinohost-ho-tro-php8

#3. Khuyến cáo thuộc tính hàm dựng (Constructor property promotion)

PHP 8.0 có code định nghĩa ngắn hơn để khởi tạo thuộc tính.

RFC này bổ sung thêm đường cú pháp để tạo các đối tượng giá trị hoặc đối tượng truyền dữ liệu. Thay vì chỉ định các thuộc tính của lớp và một hàm tạo cho chúng, PHP 8.0 có thể kết hợp chúng thành một.

tinohost-ho-tro-php8

#4. Hợp nhất các kiểu (Union types)

Bản chất PHP được định kiểu động của PHP. Do đó, trong nhiều trường hợp, kiểu liên hợp này sẽ rất hữu ích.

Thay vì các chú thích PHPDoc cho sự kết hợp của các kiểu, bạn có thể sử dụng các khai báo kiểu liên minh gốc được xác thực trong thời gian chạy. Vì thế, một biến có thể thuộc một vài kiểu dữ liệu.

#5. Trình biên dịch JIT (Just-in-Time Compiler)

Đây là một kỹ thuật được PHP tích hợp vào việc biên dịch code PHP thành mã máy.

Điểm cải tiến nổi bật của JIT chính là trình biên dịch mới bổ sung JIT Compiler giúp PHP 8.0 đạt hiệu suất cao gấp 1,5 – 2 lần so với PHP 7. Hiệu suất ứng dụng ngang bằng hoặc tốt hơn với PHP 7.4.

Trong hai công cụ biên dịch JIT, Tracing JIT hứa hẹn mang đến hiệu suất cao gấp 3 lần trên các điểm chuẩn tổng hợp.

Bạn có thể tham khảo Biểu đồ so sánh tốc độ của PHP khi có JIT và không có JIT như hình bên dưới:

tinohost-ho-tro-php8Trong đó:

  • bench.php, micro_bech.php, N-body, Mandelbrot đều là các bài test trên ứng dụng PHP đơn giản.
  • Các bài test còn lại, lần lượt test trên các ứng dụng PHP có độ phức tạp tăng dần.
  • Đường màu đen, kẻ dọc ở biểu đồ trên là ngưỡng tối đa khi PHP không sử dụng JIT.

Nhận xét:

  • Áp dụng JIT chỉ đạt hiệu năng cao với ứng dụng PHP đơn giản.
  • Ngược lại, JIT không mang lại nhiều ưu điểm với các ứng dụng PHP phức tạp, sử dụng các Framework, CMS phổ biến như WordPress, Symfony, …

#6. Toán tử Nullsafe (Nullsafe operator)

Với các phiên bản PHP trước, để tránh lỗi, ta thường kiểm tra giá trị có khác null hay không trước khi truy cập. Nullsafe operator của PP 8.0 cho phép bạn truy cập vào giá trị của một thuộc tính ở giá trị null mà không bị lỗi.

Sử dụng một chuỗi các cuộc gọi với toán tử nullsafe mới có thể được xem là phương án thay thế cho điều kiện kiểm tra null.

Khi đánh giá một phần tử trong chuỗi fails, quá trình thực thi của toàn bộ chuỗi sẽ bị hủy bỏ. Lúc này, toàn bộ chuỗi được gán là null.

Thay vì:

$startDate = $booking->getStartDate();

$dateAsString = $startDate ? $startDate->asDateTimeString() : null;

Bạn sẽ:

$dateAsString = $booking->getStartDate()?->asDateTimeString();

#7. Biểu thức đối sánh (Match expression)

Tương tự như switch, Match expression là một biểu thức, kết quả có thể được lưu trữ trong một biến hoặc được trả về.

Các nhánh so sánh chỉ hỗ trợ các biểu thức một dòng và không cần dấu ngắt để kết thúc lệnh. Match có thể kết hợp các điều kiện, sử dụng so sánh kiểu nghiêm ngặt và không thực hiện bất kỳ kiểu ép buộc nào.

tinohost-ho-tro-php8#8. Nhất quán lỗi cho các chức năng nội bộ (Consistent type errors for internal functions)

Các hàm do người dùng định nghĩa trong PHP sẽ đưa ra TypeError. Trong khi đó, các hàm nội bộ sẽ phát ra cảnh báo và trả về null. Từ phiên bản PHP 8.0, hành vi của các hàm nội bộ đã được thực hiện nhất quán.

Nếu xác thực các tham số không thành công, các chức năng nội bộ sẽ đưa ra Exception.

Hiểu cách khác, những cảnh báo liên quan đến check kiểu dữ liệu parameter, sẽ được PHP chuyển đổi thành Exception.

tinohost-ho-tro-php8Còn nhiều tính năng đã được cải tiến, mời bạn trải nghiệm và chia sẻ với TinoHost nhé!

Mọi thắc mắc và góp ý liên quan, xin vui lòng liên hệ ngay TinoHost để được tư vấn chi tiết hoặc Fanpage để cập nhật những thông tin mới nhất.

Với bề dày kinh nghiệm hơn 5 năm cung cấp hosting, dịch vụ cho thuê máy chủ, các dịch vụ liên quan đến tên miền và bảo mật website, hãy để TinoHost đồng hành cùng bạn trên con đường khẳng định thương hiệu trên bản đồ công nghệ toàn cầu!

CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO

  • Trụ sở chính: L17-11, Tầng 17, Tòa nhà Vincom Center, Số 72 Lê Thánh Tôn, Phường Bến Nghé, Quận 1, Thành phố Hồ Chí Minh
    Văn phòng đại diện: Tầng 31, Tòa nhà Landmark 2, Vinhomes Central Park, Số 720A Điện Biên Phủ, Phường 22, Quận Bình Thạnh, Thành phố Hồ Chí Minh
  • Điện thoại: 0364 333 333
    Tổng đài miễn phí: 1800 6734
  • Email: [email protected]
  • Website: www.tinohost.com
Rate this post
Thẻ : PHPPHP 8.0TinoHost
Chia sẻ166

Get real time update about this post categories directly on your device, subscribe now.

Unsubscribe

Liên quan Bài đăng

tinohost-khuyen-mai
Khuyến Mãi

TinoHost có chương trình khuyến mại gì “hot”?

bao-toan-thoi-han-hosting
Khuyến Mãi

Định luật bảo toàn thời hạn hosting – độc quyền tại TinoHost!

chuyen-hosting-ve-tinohost
Thông Báo

Nhân đôi thời gian sử dụng khi chuyển hosting về TinoHost

Đề xuất.

Hướng dẫn cách quét virus trên Hosting sử dụng cPanel 1

Hướng dẫn cách quét virus trên Hosting sử dụng cPanel

digital-marketing-la-gi

Digital Marketing là gì? Tại sao doanh nghiệp 2021 nên sử dụng Digital Marketing?

Khuyến mãi Tinohost

  • – Hosting giá từ 9k
  • – VPS giá từ 139k
  • – Tên miền giá từ 39k
  • Giới thiệu
  • Kiểm tra tên miền
  • Cloud Server
  • Hosting giá rẻ
  • SSL
  • Chính sách bảo mật
  • Liên Hệ
Gọi ngay: 1800 6734

© 2018 TINOHOST

  • Hosting giá rẻ
  • Webmasters
  • Kiến thức Hosting
  • Khuyến mãi
    • Tinohost
    • Thông báo
  • Hướng dẫn
    • Hướng dẫn chung
  • Kiếm tiền online

© 2018 TINOHOST

TinoHost tặng kèm plugin Rank Math Seo Pro, WP-Rocket, WPML và nhiều plugin bản quyền khác trị giá hơn 800$ khi đăng ký dịch vụ.Tải ngay