06/04/2021, 14:45

Bài 01: PHP7 là gì? PHP7 có gì mới? - ự học PHP7

Trong bài đầu tiên này mình sẽ giới thiệu với các bạn khái niệm PHP7 là gì và một số tính năng của PHP7 so với các version cũ hơn. Như ta biết version cao nhất trước PHP7 đó là PHP 5.6, và nếu đúng ra thì khi nâng cấp lên version có tính đột phá thì lúc này sẽ phải là PHP6, nhưng tại sao lại ...

Trong bài đầu tiên này mình sẽ giới thiệu với các bạn khái niệm PHP7 là gì và một số tính năng của PHP7 so với các version cũ hơn.

Như ta biết version cao nhất trước PHP7 đó là PHP 5.6, và nếu đúng ra thì khi nâng cấp lên version có tính đột phá thì lúc này sẽ phải là PHP6, nhưng tại sao lại có sự nhảy bật từ 5 -> 7 như vậy? Lý do là PHP6 người ta cũng đã nghiên cứu và đưa vào thử nghiệm, tuy nhiên sau một thời gian người ta đã quyết định bỏ luôn version 6 và nhảy lên một version mới hơn đó và version 7, vì vậy PHP6 đã không tồn tại.

1. PHP7 là gì?

PHP7 là một phiên bản của ngôn ngữ PHP được giới thiệu vào ngày 3 tháng 9 năm 2015, đây là phiên bản mới nhất và được trông đợi nhất bởi có nhiều sự thay đổi về cú pháp, bổ sung các thư viện hiện đại giúp ngôn ngữ PHP trở nên đa dạng hơn.

Để tránh sự nhầm lẫn giữa các version thì sau này chúng ta hay gọi PHP version 7 là PHP7, còn các version trước đó là PHP.

2. PHP7 có gì mới?

Vì đây là bài đầu tiên trong series nên mình chỉ trình bày sơ lược về các điểm mới của PHP7 so với các phiên bản PHP trước đó.

Tốc độ PHP7 nhanh gấp hai lần

Với việc sử dụng thư bộ core Zend Engine mới PHPNG nên tốc độ của PHP7 tăng gấp hai lần, cho dù là Framework hay CMS thì hiệu xuất xử lý đều tăng gấp đôi. Để chứng minh thì mình lấy một hình ảnh thông tin benchmark hai CMS nổi tiếng đó là Drupal và WordPress của Teamtreehouse blog.

benchmark php7 png

Với hiệu suất như thế này thì chúng ta không thể không nâng cấp lên PHP7 phải không nào.

Chỉ rõ kiểu dữ liệu cho biến

Nếu bạn đã từng học qua ngôn ngữ C, C++ thì bạn sẽ thấy khi khai báo một biến chúng ta phải khai báo luôn kiểu dữ liệu cho biến đó. Ví dụ khai báo biến studentName kiểu INT thì code C++ sẽ như sau:

int studentName;

Ví dụ trong PHP7:

function showInfo(string $domain)
{
    echo 'Domain là ' . $domain;
}

Xác định kiểu trả về cho hàm

Trong C hay C++ có thể định nghĩa kiểu dữ liệu trả vè cho hàm, ví dụ:

int summary(int a, int b)
{
    return a + b;
}

Điều này hoàn toàn làm được trong PHP7 như sau:

function summary(int $a, int $b) : int
{
    return $a + $b;
}

Có nhiều toán tử mới

Ngoài các toán tử có sẵn thì trong PHP7 có bổ sung thêm nhiều toán tử mới lạ.

Ví dụ:

$a = 2;
$b = 2;

$compare = $a <=> $b;

/*
return -1 nếu $a < $b
return 0 nếu $a = $b
return 1 nếu $a > $b
 */

Bổ sung Anonymous Class

Trong PHP7 có thể sử dụng Anonymous Class giống như Anonymous Function.

$dog = new class{
    function eat($meal){
        echo 'Con chó đang ăn trưa với món ' . $meal;
    }
};

$dog->eat('Sốt cà ');

Xóa đi một số extension:

Các ext đã bị remove:

  • ereg
  • mssql
  • mysql
  • sybase_ct

Các ext mới thêm:

  • aolserver
  • apache
  • apache_hooks
  • apache2filter
  • caudium
  • continuity
  • isapi
  • milter
  • nsapi
  • phttpd
  • pi3web
  • roxen
  • thttpd
  • tux
  • webjames

Và nhiều tính năng khác

Còn rất nhiều tính năng khác nữa nhưng mình không trình bày trong series này mà sẽ trình bày ở các bài tiếp theo.

3. Lời kết

Như vậy PHP7 ra đời là một bước đột phá rất quan trọng bởi hiện nay có khá nhiều công nghệ ra đời với tốc độ xử lý nhanh nên PHP cần phải cạnh tranh rất nhiều mới giữ được vị trí của mình trên thị trường. 

Bài này mình chỉ giới thiệu sơ lược khái niệm PHP7 là gì và một số tính năng mới trong PHP7, bài viết mang tính chất tham khảo và không đi sâu vào từng chức năng cụ thể, vì vậy để hiểu rõ hơn thì bạn nên đọc toàn bộ series này.

Trần Trung Dũng

15 chủ đề

2610 bài viết

0