QCon London [27-29 tháng 3 năm 2023]. Áp dụng các xu hướng mới nổi phù hợp để giải quyết các thách thức kỹ thuật của bạn
PHP 7 — Các cải tiến đối với mảng, toán tử, hằng số và xử lý ngoại lệ
Thích In Dấu trang
Ngày 10 tháng 8 năm 2020 Đọc 22 phút
qua
Deepak Vohra
xét bởi
Sergio De Simone
Viết cho InfoQ
Tham gia cộng đồng chuyên gia. Tăng khả năng hiển thị của bạn.Phát triển sự nghiệp của bạn. Tìm hiểu thêm
Chìa khóa rút ra
- PHP7. 0 thêm toán tử kết hợp null [??] để trả về toán hạng đầu tiên nếu nó tồn tại và giá trị của nó không phải là NULL và trả về toán hạng thứ hai nếu không. PHP7. 4 thêm hỗ trợ cho các bài tập hợp nhất null.
- PHP 7.0 adds a new comparison operator [] to compare expressions.
- PHP7. 0 thêm hỗ trợ cho cú pháp thoát điểm mã Unicode, để chuyển đổi dạng thập lục phân sang dạng mã hóa UTF-8 tương ứng.
- Câu lệnh sử dụng có thể nhóm các lớp, hàm và hằng ngay cả khi được nhập từ cùng một không gian tên
- PHP7. 1, thêm một cú pháp mảng dạng ngắn để giải nén hoặc phá hủy một mảng.
- PHP 7. 1 thêm hỗ trợ cho khả năng hiển thị hằng số của lớp, sử dụng những hằng số nào có thể được khai báo là công khai, được bảo vệ và riêng tư
- PHP 7 hỗ trợ chỉ định nhiều ngoại lệ trong cùng một khối bắt của câu lệnh try/catch
- Với PHP7. 0. 0, từ khóa có thể được sử dụng làm định danh
- PHP7. 3 giới thiệu cú pháp Heredoc và Nowdoc linh hoạt để dễ đọc hơn
- PHP 7. 3 bổ sung hỗ trợ cho các phép gán tham chiếu trong phá hủy mảng và danh sách[].
PHP7. x mang đến một số cải tiến và tính năng mới liên quan đến tất cả các khía cạnh của ngôn ngữ, bao gồm hỗ trợ tốt hơn cho lập trình hướng đối tượng, mở rộng cho các lớp và giao diện, cải tiến hệ thống loại, xử lý lỗi, v.v. Trong loạt bài viết này, chúng tôi thảo luận về các tính năng mới trên các phiên bản PHP 7 khác nhau. phiên bản x
Trong bài viết cuối cùng của loạt bài về các tính năng mới trong PHP 7. x, chúng ta sẽ thảo luận về các cải tiến đối với mảng, toán tử, hằng số và xử lý ngoại lệ
Toán tử hợp nhất Null
Có thể sử dụng hàm
Hello JohnSmith
Hello JohnSmith
Hello JohnSmith
9 để tìm hiểu xem một biến có được đặt hay không
0. Thông thường, bạn sẽ sử dụng toán tử bậc ba trong PHP with
1 như minh họa trong ví dụ sau. Ở đây,
1 trả về true nếu tên tham số yêu cầu
3 được đặt, trong trường hợp đó, giá trị của biến được gán cho biến
4, nếu không thì
4 được đặt thành giá trị chuỗi không đổi$name = isset[$_GET['name']] ? $_GET['name'] : 'Deepak';
echo "Hello " . htmlspecialchars[$name]."
";
Toán tử hợp nhất null [
6], đã được thêm vào PHP 7. 0, có thể được sử dụng để hợp lý hóa loại hoạt động này. Thật vậy, nó sẽ trả về toán hạng đầu tiên nếu nó tồn tại và giá trị của nó không phải là
0 và trả về toán hạng thứ hai nếu không. Ví dụ trước có thể được viết lại như sau bằng cách sử dụng ??
0Các toán tử kết hợp null có thể được xâu chuỗi để trả về giá trị được xác định đầu tiên
1Bây giờ, hãy tạo tập lệnh ternary. php bao gồm tất cả các ví dụ sau
2Nếu bạn chạy tập lệnh không có tham số yêu cầu, tất cả các ví dụ sẽ xuất giá trị cuối cùng được chỉ định
3Thay vào đó, nếu bạn chạy tập lệnh cung cấp tham số yêu cầu, chẳng hạn như
8, thì tất cả các ví dụ sẽ xuất ra tham số yêu cầu nhận được
9Hello JohnSmith
Hello JohnSmith
Hello JohnSmith
Toán tử so sánh mới
A new comparison operator [] has been added to PHP 7.0 which returns -1 if the first expression is less than the second, 0 if the two expressions are the same, and 1 if the first expression is greater than the second. PHP’s type comparison rules are used for performing the comparison. To demonstrate this, create a script compare.php to compare integer, floating-point and string values:
Nếu chạy tập lệnh, bạn sẽ nhận được kết quả so sánh sau
8Chuyển đổi điểm mã Unicode từ Dạng thập lục phân sang UTF-8
PHP7. 0 đã thêm hỗ trợ cho cú pháp thoát điểm mã Unicode, có dạng thập lục phân và trả về dạng được mã hóa UTF-8 tương ứng. Ví dụ:
80 được biểu thị bằng
81 bằng Unicode, trong đó số 0 đứng đầu có thể được bỏ qua. Để thử nghiệm cú pháp thoát điểm mã Unicode, hãy tạo tập lệnh unicode. php. Sao chép danh sách sau vào tập lệnh
1Nếu bạn chạy tập lệnh, một chuỗi UTF-8 ĤĒĻĻŌ sẽ được in ra
Cho phép nhóm trong câu lệnh ‘use’ cho Không gian tên bí danh
Trước PHP 7. 0, mỗi lớp, hàm và hằng số được nhập từ cùng một không gian tên phải được chỉ định bằng một câu lệnh
82 riêng biệt. Với PHP7. 0, các lớp, hàm và hằng số có thể được nhóm trong cùng một câu lệnh
82 ngay cả khi được nhập từ cùng một không gian tên. Ngoài ra, kể từ PHP 7, dấu phẩy ở cuối được cho phép khi nhóm các mục nhậpVí dụ: tạo danh mục tập lệnh. php và khai báo một số lớp, hàm và hằng số thuộc cùng một không gian tên như được liệt kê tại đây
4Như bạn có thể thấy, trong khi các hằng số được khai báo bằng cách sử dụng
84 phải chỉ định tên đủ điều kiện của chúng, điều tương tự không áp dụng cho các hằng số được khai báo bằng cách sử dụng
85. Tạo một không gian tên nhóm tập lệnh khác. php và nhập các lớp, hàm và hằng số được xác định trong danh mục. php. Tập lệnh bao gồm một câu lệnh
86 cho danh mục. php. Các lớp, hàm và hằng số được nhập theo nhóm khi sử dụng
00Chạy không gian tên nhóm. php để truy cập vào các lớp, hàm và hằng số được nhập theo nhóm và xuất giá trị của chúng
01Cú pháp mảng ngắn để hủy cấu trúc mảng để gán
Chúng tôi đã đề cập trước đó rằng hỗ trợ giải nén chuỗi có
87 đã bị xóa khỏi PHP 7. Dù sao đi nữa,
88 tiếp tục hỗ trợ giải nén hoặc phá hủy một mảng để gán cho các biến. Trong PHP7. 1, một cú pháp mảng dạng ngắn đã được thêm vào để giải nén hoặc hủy cấu trúc một mảng. Để minh họa việc sử dụng cú pháp mảng dạng ngắn, hãy tạo tập lệnh array_syntax. php và tạo mảng hai chiều cho các tạp chí khác nhau với id được chỉ định cho từng tạp chí
02Để sử dụng
87 để hủy cấu trúc hoặc giải nén mảng
10 thành
11 và
12, bạn có thể sử dụng cú pháp sau
03Ngoài ra, bạn có thể sử dụng cú pháp phá hủy mảng mới như sau
04Hàm
87 có thể được sử dụng trong _______214 cấu trúc như trong ví dụ sau
05
15 tương đương sử dụng cú pháp mảng
16 được trình bày ở đây
06Cú pháp mảng đầy đủ. tập lệnh php được liệt kê bên dưới
07Nếu chạy tập lệnh, bạn sẽ thấy cú pháp mảng dạng ngắn mới thực hiện giải nén mảng giống như vậy và xuất ra các giá trị giống như
87, như minh họa bên dưới
08Liên quan đến vấn đề này, hàm
18 trả về giá trị cho một cột duy nhất trong một mảng đầu vào. Cột được xác định bởi
19 theo cú pháp sau
09PHP7. 0. 0 đã thêm hỗ trợ cho tham số đầu vào là một mảng các đối tượng. Để chứng minh điều này, hãy tạo tập lệnh array_column. php và khai báo một lớp
40 với hai trường
41 và
42. Tạo hai phiên bản của
40 và đặt giá trị cho cả hai. Sau đó, tạo một mảng đối tượng chứa hai
40 đối tượng
10Cuối cùng, lấy giá trị của từng trường trong số hai trường từ mảng đối tượng bằng cách sử dụng hàm
45
11Mảng_cột. tập lệnh php được liệt kê ở đây
12Nếu bạn chạy tập lệnh, tập lệnh sẽ xuất các giá trị trường từ hai đối tượng
40
13Hỗ trợ cho khả năng hiển thị liên tục của lớp
PHP 7. 1 đã thêm hỗ trợ cho khả năng hiển thị hằng số của lớp, ngụ ý rằng các hằng số có thể được khai báo là công khai, được bảo vệ và riêng tư. Các hằng số công khai có thể truy cập được ở bất cứ đâu mà lớp mà chúng được khai báo có thể truy cập được. Các hằng số được bảo vệ có thể truy cập được trong cùng một lớp và các lớp con. Các hằng số riêng tư chỉ có thể truy cập được trong cùng một lớp. Để chứng minh việc sử dụng khả năng hiển thị hằng số của lớp, hãy tạo một hằng số tập lệnh. php và khai báo một lớp có tên là
47. Trong lớp khai báo bốn hằng số. một không có công cụ sửa đổi quyền truy cập, một công cụ thứ hai có
48 công cụ sửa đổi quyền truy cập, một công cụ thứ ba có
49 công cụ sửa đổi quyền truy cập và một hằng số thứ tư có công cụ sửa đổi quyền truy cập riêng tư
14Khả năng hiển thị mặc định của hằng số lớp là công khai. Bây giờ hãy xác định ba hàm.
000 với công cụ sửa đổi quyền truy cập công khai,
001 với công cụ sửa đổi quyền truy cập riêng tư và
002 với công cụ sửa đổi quyền truy cập được bảo vệ. Mỗi hàm xuất giá trị của từng trong số bốn hằng số được xác định trước đó
15Từ fn_a[] gọi fn_b[]
003Từ fn_b[] gọi hàm fn_c[]
004Để chỉ ra rằng tất cả các hằng số được khai báo trong lớp đều có thể truy cập được từ cùng một lớp bất kể khả năng hiển thị hoặc công cụ sửa đổi quyền truy cập được sử dụng, hãy tạo một phiên bản của hằng số lớp và gọi hàm
000, lần lượt gọi hàm
001, hàm này lại gọi
002
16Để chỉ ra rằng các hằng số riêng tư có thể truy cập được trong cùng một lớp mà chúng được khai báo và các hằng số được bảo vệ chỉ có thể truy cập được từ một lớp con và trong cùng một lớp như đã khai báo, hãy khai báo một lớp
008 và xuất giá trị của từng hằng số trong một hàm
000
17Cuối cùng, để chỉ ra rằng trong khi các hằng số công khai và được bảo vệ có thể truy cập được từ một lớp con, thì các hằng số riêng tư thì không, hãy khai báo một lớp con của hằng số lớp và xuất giá trị của từng hằng số trong một hàm
010
18Các hằng số. tập lệnh php được liệt kê
19Nếu bạn cố chạy tập lệnh, câu lệnh echo hiển thị bên dưới sẽ tạo ra lỗi sau.
011
20Là hằng số được bảo vệ,
012 không thể truy cập được từ bất kỳ lớp nào không bắt nguồn từ danh mục. Bây giờ, hãy bình luận câu lệnh đó và chạy lại tập lệnh. Tập lệnh tạo ra lỗi
013 ở câu lệnh sau
21Là hằng số riêng tư,
014 không thể truy cập nó từ bất kỳ lớp nào khác. Nhận xét câu lệnh đó và chạy lại tập lệnh. Tập lệnh tạo ra một lỗi khác.
015tại tuyên bố sau
22Hằng số
014 là một hằng số riêng tư, bạn không thể truy cập nó từ một lớp con. Nhận xét câu lệnh đó và chạy lại tập lệnh. Bây giờ, bạn sẽ nhận được đầu ra sau
23Nhiều ngoại lệ trên mỗi khối bắt
Nhiều ngoại lệ hiện có thể được chỉ định trong cùng một khối
017 của câu lệnh
018, sử dụng ký tự ống dẫn '
019' làm dấu phân cách. Tính năng này hữu ích nếu nhiều trường hợp ngoại lệ cần được xử lý theo cùng một cách. Để minh họa việc sử dụng khối bắt đa ngoại lệ, hãy tạo tập lệnh đa bắt ngoại lệ. php và sao chép danh sách sau vào đó. Tập lệnh khai báo hai lớp ngoại lệ tùy chỉnh và một câu lệnh try/catch trong [
020] hàm test[] của một lớp khác khai báo nhiều ngoại lệ trong khối catch của nó.
24Tập lệnh đa bắt ngoại lệ. php được liệt kê bên dưới
25Nếu bạn chạy tập lệnh, thì ngoại lệ được đưa vào khối thử sẽ bị bắt trong khối bắt như minh họa bên dưới
021Cú pháp tải tiện ích mở rộng được cải thiện
Cú pháp tải tiện ích có sẵn trong
022 đã được cải thiện. Tiện ích mở rộng dùng chung không yêu cầu hậu tố
023 [trên Windows] và
024 [trên Unix] nữa. Ví dụ: cơ sở dữ liệu MySQL và phần mở rộng cơ sở dữ liệu Oracle có thể được chỉ định như sau
26Từ khoá như định danh
Với PHP7. 0. 0, các từ khóa có thể được sử dụng làm tên thuộc tính, hằng số và phương thức cho các lớp, giao diện và đặc điểm. Để minh họa điều này, hãy tạo tập lệnh restriction. php và sao chép đoạn mã sau vào đó. Tập lệnh khai báo tên biến bằng từ khóa dành riêng [______1025]. Nó cũng khai báo một hằng số có tên là
026[một từ khóa] và một hàm có tên là
027[một từ khóa]
27Nếu bạn chạy tập lệnh, không có thông báo lỗi nào xuất ra. Một ngoại lệ đối với khả năng sử dụng từ khóa làm định danh là một hằng số không thể được đặt tên là lớp. Để chứng minh điều này, hãy thêm dòng sau vào tập lệnh trước
028Nếu bạn chạy tập lệnh, thông báo lỗi sau sẽ được tạo
029Cú pháp Heredoc và Nowdoc linh hoạt
Hãy bắt đầu với việc xem lại
030 và
031 cú pháp.
030 tương tự như chuỗi trích dẫn kép, với dấu bắt đầu và kết thúc thay thế dấu ngoặc kép. Với heredoc, sau toán tử start
033, bạn có thể chỉ định một mã định danh tùy ý theo sau là một dòng mới. Một chuỗi theo sau và cùng một số nhận dạng đóng dấu ngoặc kép.
031 tương tự như
030 ngoại trừ điểm đánh dấu bắt đầu được đặt trong một dấu nháy đơn '' và không có phân tích cú pháp nào được thực hiện bên trong NowdocPHP7. 3 đã giới thiệu cú pháp
030 và
031 linh hoạt để dễ đọc hơn với các cải tiến sau- Dấu chấm phẩy không cần theo sau dấu chấm phẩy [‘;’]
- Dấu đóng không cần theo sau bởi một dòng mới
- Dấu đóng có thể được thụt lề bằng các tab hoặc dấu cách. Không thể trộn lẫn các tab và khoảng trắng. Văn bản chuỗi trong tài liệu có thể được thụt lề ở mức bằng hoặc lớn hơn mức thụt lề của dấu đóng
- Mã định danh kết thúc được xác định bởi một điểm đánh dấu độc lập, liên tục giống như điểm đánh dấu bắt đầu
Tiếp theo, chúng ta sẽ chứng minh cú pháp mới với một vài ví dụ. Nhưng trước tiên hãy nhớ lại cú pháp cũ.
038
039
040Heredoc cũng có thể được gán cho một biến
28Sau đây là một ví dụ về heredoc sử dụng cú pháp mới
29Thay vào đó, tập lệnh sau không phải là cú pháp heredoc hợp lệ và tạo ra lỗi sau.
041
30Ví dụ về cú pháp
031 trước như sau
043
044
040Một ví dụ về cú pháp nowdoc mới như sau
31Bởi vì không có phân tích cú pháp nào được thực hiện bên trong nowdoc, ví dụ sau chứa mã dự phòng trong chuỗi nowdoc
32Bởi vì không có phân tích cú pháp nào được thực hiện, tập lệnh trước tạo ra đầu ra sau
046Như đã đề cập, các mức thụt đầu dòng của phần thân heredoc và nowdoc ít nhất phải bằng mức của dấu đóng. Để chứng minh điều này, hãy chạy tập lệnh sau
33Trong trường hợp này, lỗi sau được tạo ra
047Hỗ trợ các bài tập tham chiếu trong cấu trúc mảng
PHP7. 3 đã thêm hỗ trợ cho các phép gán tham chiếu trong mảng và _______187 phá hủy. Trước tiên, hãy xem lại các phép gán trong phá hủy mảng/danh sách là gì. Trong tập lệnh sau, một mảng bị hủy cấu trúc và các giá trị phần tử của nó được gán cho một danh sách
34Câu lệnh
049 tạo ra kết quả sau
050Bây giờ, hãy xem xét một ví dụ về cú pháp mới
051Trong trường hợp này, các phần tử danh sách $a và $c được chỉ định theo tham chiếu. Ví dụ: tạo tập lệnh sau trong đó phần tử
052 được chỉ định theo tham chiếu đến biến $b. Điều này có nghĩa là nếu $b được chỉ định một giá trị mới, thì giá trị mới đó cũng được chỉ định cho
052
35Đầu ra từ tập lệnh như sau
36Nếu chạy cùng một tập lệnh mà không gán theo tham chiếu, đầu ra sẽ khác
054Đầu ra với nhiệm vụ trước như sau
37Cuối cùng, hãy xem xét một ví dụ về gán tham chiếu trong phá hủy mảng. Trong tập lệnh sau, một phần tử mảng được gán một giá trị bằng cách tham chiếu đến một biến $b. Nếu giá trị của $b bị thay đổi thì giá trị của phần tử mảng cũng vậy
38Chạy tập lệnh và bạn sẽ nhận được đầu ra sau
39Instanceof Chấp nhận chữ
Hãy bắt đầu với việc xem xét toán tử
055 . Trong tập lệnh sau,
055 được dùng để tìm hiểu xem một đối tượng có phải là một thể hiện của lớp A hay khôngHello JohnSmith
Hello JohnSmith
Hello JohnSmith
0Nếu bạn chạy tập lệnh, đầu ra 1 sẽ được tạo
PHP7. 3 đã thêm hỗ trợ để sử dụng chữ làm toán hạng đầu tiên. Trong tập lệnh sau, toán hạng đầu tiên của
055 là một chuỗi ký tựHello JohnSmith
Hello JohnSmith
Hello JohnSmith
1Nếu bạn chạy tập lệnh, thì
058 được xuất ra. Nếu toán hạng đầu tiên là một chữ cái, thì đầu ra instanceof luôn là
058Chuyển nhượng kết hợp Null
Chúng ta đã thảo luận trước đó về toán tử hợp nhất null
6 được giới thiệu trong PHP 7. 0. PHP7. 4 đưa toán tử hợp nhất null
6 đi xa hơn bằng cách thêm hỗ trợ cho phép gán hợp nhất null. Ví dụ, hãy xem xét trường hợp sau. bạn sử dụng
062để xác định xem khóa mảng có được đặt hay không và nếu không, bạn đặt giá trị cho khóa đóHello JohnSmith
Hello JohnSmith
Hello JohnSmith
2Tập lệnh sau minh họa việc sử dụng phép gán hợp nhất null cho cùng một cài đặt có điều kiện của khóa mảng
Hello JohnSmith
Hello JohnSmith
Hello JohnSmith
3Dấu tách chữ số
Các chữ số có nhiều chữ số có thể không đọc được do độ dài của chúng, điều này có thể gây khó khăn cho việc gỡ lỗi. PHP7. 4 giới thiệu dấu gạch dưới dưới dạng dấu tách chữ số để cải thiện khả năng đọc mã. Tập lệnh sau sử dụng dấu phân cách _ chữ số trong các biến thuộc các loại khác nhau
Hello JohnSmith
Hello JohnSmith
Hello JohnSmith
4Yêu cầu duy nhất để sử dụng dấu gạch dưới làm dấu tách chữ số là dấu gạch dưới phải xuất hiện giữa hai chữ số. Cụ thể, nó không được ở cuối một chữ số, cũng không được xuất hiện bên cạnh một dấu gạch dưới khác hoặc bên cạnh dấu thập phân. Tên biến vẫn có thể bắt đầu bằng dấu gạch dưới. Sau đây là tất cả các ví dụ về _ được sử dụng làm dấu tách chữ số theo cách không chính xác.
Hello JohnSmith
Hello JohnSmith
Hello JohnSmith
5Các dấu gạch dưới trong chữ số được loại bỏ trong lexing
Toán tử trải rộng để giải nén bên trong một Mảng
Toán tử dải được biểu thị bằng ba dấu chấm liên tiếp … đã được hỗ trợ để giải nén đối số trong chữ ký hàm. PHP7. 4 thêm hỗ trợ cho toán tử trải rộng để giải nén các phần tử của một mảng. Các đặc điểm chính của hỗ trợ toán tử trải rộng trong mảng như sau
- Mảng và đối tượng triển khai
063 có thể được sử dụng với toán tử trải rộng - Toán tử trải rộng có thể được sử dụng ở bất cứ đâu trong một mảng, trước hoặc sau các phần tử của nó và thậm chí liên tiếp.
- Nó có thể được sử dụng với cả cú pháp mảng [mảng[]] và cú pháp ngắn [[]].
- Một mảng được trả về bởi một hàm có thể được giải nén bằng toán tử điểm
- Một mảng không thể giải nén bằng tham chiếu. Nếu các phần tử của một mảng được giải nén được lưu trữ theo tham chiếu, chúng sẽ tiếp tục được lưu trữ theo tham chiếu sau khi giải nén
- Phím chuỗi không được hỗ trợ
Tập lệnh sau minh họa việc sử dụng toán tử trải rộng. phần tử mảng.
064 sử dụng toán tử trải phổ. Phần tử mảng ,.
065 giải nén một mảng do một hàm trả về. Hello JohnSmith
Hello JohnSmith
Hello JohnSmith
6Mỗi kết quả đầu ra của câu lệnh var_dump
066Để xác minh rằng các khóa chuỗi không thể được sử dụng với toán tử trải rộng, hãy chạy tập lệnh sau
Hello JohnSmith
Hello JohnSmith
Hello JohnSmith
7
Thông báo lỗi sau được hiển thị
067Dấu ngoặc nhọn không dùng nữa Cú pháp để truy cập các phần tử mảng
PHP7. 4 phản đối việc sử dụng dấu ngoặc nhọn để truy cập các phần tử mảng và độ lệch chuỗi. Cú pháp dấu ngoặc nhọn dù sao cũng chỉ có chức năng hạn chế; . Vẫn có thể sử dụng tập lệnh sau và tạo chuỗi đầu ra dự kiến [1] "a".
Hello JohnSmith
Hello JohnSmith
Hello JohnSmith
8Tuy nhiên, nó cũng hiển thị một thông báo cảnh báo
068Tóm lược
Trong một loạt năm bài viết, chúng tôi đã khám phá các tính năng mới nổi bật trong PHP 7. x được nhóm theo danh mục tính năng. Trong bài viết đầu tiên PHP 7 — Bắt đầu và Cải tiến OOP chúng tôi đã thiết lập môi trường để chạy PHP 7. x và giới thiệu các cải tiến liên quan đến lập trình hướng đối tượng. Trong bài viết thứ hai PHP 7 — Các cải tiến về Lớp và Giao diện chúng tôi đã giới thiệu các cải tiến đối với các lớp và giao diện. Trong bài viết thứ ba PHP 7 — Tính năng mới cho các loại chúng tôi đã giới thiệu các cải tiến trong hệ thống loại của PHP. Trong bài viết thứ tư PHP 7 – Cải tiến chức năng chúng tôi đã giới thiệu các cải tiến liên quan đến chức năng. Trong bài viết cuối cùng này của loạt bài, chúng tôi kết thúc với các cải tiến không được đề cập trong các bài viết trước đó và chúng bao gồm các cải tiến đối với mảng, toán tử, hằng số và xử lý ngoại lệ
PHP8. 0 dự kiến sẽ được cung cấp vào đầu tháng 12 năm 2020 với một bộ tính năng mới, nhưng cho đến lúc đó hãy kiểm tra lại PHP 7 của bạn. x.
Giới thiệu về tác giả
PHP7. x mang đến một số cải tiến và tính năng mới liên quan đến tất cả các khía cạnh của ngôn ngữ, bao gồm hỗ trợ tốt hơn cho lập trình hướng đối tượng, mở rộng cho các lớp và giao diện, cải tiến hệ thống loại, xử lý lỗi, v.v. Trong loạt bài viết này, chúng tôi thảo luận về các tính năng mới trên các phiên bản PHP 7 khác nhau. phiên bản x
Lấy cảm hứng từ nội dung này?
Trở thành biên tập viên cho InfoQ là một trong những quyết định sáng suốt nhất trong sự nghiệp của tôi. Nó đã thử thách tôi và giúp tôi trưởng thành theo nhiều cách. Chúng tôi muốn có nhiều người tham gia nhóm của chúng tôi
Thomas Betts Trưởng ban biên tập, Thiết kế và kiến trúc phần mềm @InfoQ;
Viết cho InfoQ
Xếp hạng bài viết này
nhận con nuôi
Phong cách
Đã liên hệ với tác giả
Nội dung này nằm trong chủ đề Ngôn ngữ lập trình
chủ đề liên quan- Phát triển
- Kết xuất phía máy chủ
- JavaScript
- PHP7. x Loạt bài báo
- PHP7
- PHP
- Ngôn ngữ lập trình
- Ngôn ngữ động
- Lập trình hệ thống
- NGUỒN SÁNG
- Phát triển web
biên tập liên quan
Nội dung được tài trợ có liên quan
Nhà tài trợ liên quan
Khám phá các xu hướng và thực tiễn mới nổi từ các chuyên gia tên miền. Tham dự trực tiếp hoặc trực tuyến tại QCon London [27-29 tháng 3 năm 2023]
Nội dung liên quan
PHP 8 - Các lớp và Enum
Apple công bố bản viết lại hoàn toàn nhanh chóng của Foundation Framework
Swift để thêm hỗ trợ cho quyền sở hữu, macro và tương tác C ++
PHP 8 – Hàm và Phương thức
PHP 8 — Thuộc tính, Biểu thức khớp và các cải tiến khác
Báo cáo xu hướng InfoQ về AI, ML và Kỹ thuật dữ liệu—Tháng 8 năm 2022
Vercel ra mắt các chức năng Edge để cung cấp tính toán tại Edge
Đã phát hành Vite 4, thay thế Babel bằng SWC dựa trên Rust nhanh hơn
Nâng cao, SSR cho các Thành phần Web - Brian Leroux tại QCon San Francisco 2022
Máy tính không máy chủ tốt hơn với WebAssugging
Triển khai Đăng nhập không cần mật khẩu với Giao thức WebAuthn
Tách mối quan tâm trong nút. js
Xoay một nút. js Monolith thành Monorepo mà không làm gián đoạn nhóm
Khả năng mở rộng nền tảng hiệu quả, an toàn thông qua WebAssugging
Sử dụng công cụ mã để chèn lỗi ở cấp ứng dụng tại eBay
Bài học từ quá trình di chuyển nền tảng gần đây của Spotify Mobile Engineering
Kích thước máy ảo Ebsv5 được tối ưu hóa bộ nhớ mới của Microsoft trong Bản xem trước mang lại hiệu suất cao hơn
AWS công bố GA của cụm đàn hồi DocumentDB
Kubernetes 1. 26 Đã phát hành với các thay đổi về sổ đăng ký hình ảnh, phân bổ tài nguyên nâng cao và số liệu
Các nhà nghiên cứu công bố khảo sát về học sâu hiệu quả về mặt thuật toán
Snyk công bố tính khả dụng chung của Snyk Cloud và các cải tiến cho nền tảng của nó
Bảo mật cụm Kafka trong Kubernetes bằng Strimzi
Kiểm tra quá khứ để cố gắng dự đoán tương lai cho việc xây dựng các ứng dụng phân tán
Entity Framework 7 mang đến các hoạt động hàng loạt và các cột JSON
Bộ công cụ di chuyển Eclipse cho Java [EMT4J] Đơn giản hóa việc nâng cấp các ứng dụng Java
Cách Starling xây dựng bộ xử lý thẻ của riêng họ
Cách SeatGeek xử lý thành công việc bán vé có nhu cầu cao
Máy chủ Cloudflare Chia sẻ địa chỉ IP cho lưu lượng đi ra
Giúp các nhóm thực hiện với Mô hình đánh giá thực hành chất lượng
Microsoft mang dịch vụ đám mây và AI của mình đến tận cùng
Tích hợp microservices được thực hiện ngay bằng cách sử dụng phát triển theo hợp đồng
Meta phát hành data2vec 2. 0 một mô hình tự giám sát hiệu quả cao
Google phát hành Công cụ quét lỗ hổng mã nguồn mở
Uber cải thiện năng suất với môi trường phát triển từ xa Devpod
Dịch vụ và con thú. Xây dựng một dịch vụ Windows không thể khởi động lại
NET MAUI Framework và. NET MAUI Community Toolkit Đã cập nhật cho. MẠNG 7
Tổng hợp tin tức về Java. Mây xuân 2022. 0. 0, Giới thiệu SourceBuddy, Jarviz và Just
máy học. MẠNG 2. 0 chứa API NLP mới và cập nhật AutoML
AWS công bố các thay đổi bảo mật sắp tới vào tháng 4 năm 2023 cho Amazon S3
Tầm quan trọng của các cổng chất lượng đường ống và cách triển khai chúng
Bản tin InfoQ
Tổng hợp nội dung của tuần trước trên InfoQ được gửi vào thứ Ba hàng tuần. Tham gia cộng đồng hơn 250.000 nhà phát triển cấp cao. Xem một ví dụ
Nhập địa chỉ email của bạn
Chọn quốc gia của bạn Tôi đồng ý với InfoQ. com xử lý dữ liệu của tôi như được giải thích trong Thông báo về quyền riêng tư này.
Chúng tôi bảo vệ quyền riêng tư của bạn
xin chào người lạ
Bạn cần Đăng ký tài khoản InfoQ hoặc Đăng nhập hoặc đăng nhập để gửi bình luận. Nhưng còn rất nhiều điều đằng sau việc đăng ký