PHP 7.0 tăng cường tốc độ và bảo mật

Tác giả server360, T.M.Hai 25, 2018, 06:13:09 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

PHP 7.0 tăng cường tốc độ và bảo mật


1. Giới thiệu.

Bản phát hành của PHP 7.0Zend Engine 3 đã mang tới hàng loạt các cải tiến về tốc độ và sự đổi mới dành cho ngôn ngữ lập trình kịch bản phía máy chủ nổi tiếng này. Dưới đây, chúng tôi xin liệt kê chi tiết về những thay đổi trong phiên bản mới lần này:
Cuối cùng thì thế hệ tiếp theo của PHP cũng đã được phát hành, mang tới các tính năng mới với nhiều sự tối ưu hóa cần thiết, cũng như các cải tiến về tốc độ từ Zend Engine. Tuy nhiên, PHP 7.0 loại bỏ hỗ trợ dành cho các mục bị phản đối, phá vỡ tính tương thích lập trình ở những trường hợp rất đặc biệt.

2. Tại sao không có phiên bản 6.0?.

Những ai hiện đang sử dụng PHP 5.6 sẽ thắc mắc điều gì đã xảy ra với PHP 6.0. Phiên bản đó đã được bắt đầu như là một thí nghiệm bổ sung hỗ trợ Unicode (UTF-16) khắp mọi nơi, tiếp tục chờ đợi mòn mỏi do gặp phải một số khó khăn nhất định trong quá trình phát triển và hiệu suất bị sụt giảm đáng kể. Một số phần của thử nghiệm đó đã được backport (đây là thao tác sử dụng bản vá của phiên bản phần mềm áp đặt lên phiên bản cũ hơn của nó) vào phiên bản PHP 5.3. Bởi vì có một số cuốn sách đã phát hành các thiết kế tham khảo của phiên bản 6.0 đã bị loại bỏ, nên số phiên bản đã được tăng lên 7.0.

3. Các tính năng mới của phiên bản PHP 7.0.

Trong số các tính năng mới của PHP 7.0scalar (đại lượng vô hướng) và các khai báo kiểu phản hồi (return type declarations), cũng như null coalesce operator (toán tử ??) dùng để sử dụng toán tử với isset() và bộ vận hành Spaceship <=> dùng để so sánh hai biểu thức (expression) – cả hai biểu thức này có thể giảm số lượng code cần thiết để thực hiện các giá trị đặc biệt.

Ngoài ra, đối với vấn đề bảo mật, unserialize() cho phép các class dựa trên sự tuyển chọn, session_start() hiện tại có thể ghi đè lên các chỉ dẫn session configuration trong php.ini, và 2 hàm mới đã được giới thiệu để tạo ra các chuỗi và kiểu dữ liệu integer an toàn theo công nghệ mã hóa. Để ổn định hơn, uniform variable syntax đã được giới thiệu, sẽ làm thay đổi cách mà PHP được biên dịch ở một mức độ không đáng kể – các giá trị hiện tại luôn hiển thị từ trái sang phải.

4. Hiệu suất được tăng lên rất nhiều.

PHP 7.0 mang đến hiệu suất được cải thiện rất nhiều so với phiên bản PHP 5.6, nhưng cũng cạnh tranh với triển khai HHVM (được viết tắt từ "HipHop Virtual Machine" là một nền tảng xử lý PHP(tương tự như PHP-FPM) được phát triển bởi Facebook). HHVM của Facebook đã được ra mắt vào năm 2011 như là một đối thủ của Zend Engine 2.x – một triển khai tham chiếu của PHP, là mẫu cuối cùng của một loạt các thử nghiệm nhằm tăng cường hiệu suất. HHVM hoạt động như là trình biên dịch JIT, dịch code của PHP sang mã bytecode Hiphop, mà sau đó đã được chuyển đổi sang ngôn ngữ máy tính (machine code x86-64). Do sự ra đời của phiên bản PHP 7.0, nên Zend Engine đã được cập nhật sang phiên bản 3.0.

Theo số điểm benchmark từ trang PHP wiki, tăng tốc độ lên 129% giữa PHP 5.6 và 7.0 (RC5) dựa theo WordPress 4.1, tăng tốc độ lên 127% trong SugarCRM và tăng lên 76% trong phiên bản Drupal 8.0.0-beta 11.

Các cải tiến của PHP 7.0 ít có rõ ràng so với HHVM, tuy nhiên PHP 7.0 có tốc độ chậm hơn WordPress 4.11%, mặc dù nó có tốc độ nhanh hơn SugarCRM là 42.7%, và nhanh hơn hơn Drupal là 23.4%.

5. Loại bỏ các tính năng bị phản đối và làm sạch code.

Các tag theo kiểu ASP đã được loại bỏ, và hỗ trợ các tag <script language=php>. Ngoài ra, MySQL Plugin đã bị phản đối ở phiên bản PHP 5.5, cũng đã được loại bỏ hoàn toàn.