Làm cách nào chúng ta có thể triển khai tự động tải các lớp?

Để sử dụng một lớp được định nghĩa trong tập lệnh PHP khác, chúng ta có thể kết hợp nó với các câu lệnh bao gồm hoặc yêu cầu. Tuy nhiên, tính năng tự động tải của PHP không cần bao gồm rõ ràng như vậy. Thay vào đó, khi một lớp được sử dụng [để khai báo đối tượng của nó, v.v. ] Trình phân tích cú pháp PHP tải nó tự động, nếu nó được đăng ký với chức năng spl_autoload_register[]. Do đó, bất kỳ số lượng lớp học nào cũng có thể được đăng ký. Bằng cách này, trình phân tích cú pháp PHP có cơ hội cuối cùng để tải lớp/giao diện trước khi phát ra lỗi

cú pháp

PHP




Unable to load test1.
5
Unable to load test1.
6
Unable to load test1.
7
Unable to load test1.
8
Unable to load test1.
9

Unable to load test1.
0
Unable to load test1.
1
Unable to load test1.
8
Unable to load test1.
0_______01
Unable to load test1.
2

Unable to load test1.
3

Ghi chú. Lớp sẽ được tải từ “. php” khi nó được sử dụng lần đầu tiên

tự động tải

ví dụ 1. Ví dụ này cho thấy cách một lớp được đăng ký để tự động tải

PHP




Unable to load test1.
4

Unable to load test1.
0
Unable to load test1.
5
Unable to load test1.
6
Unable to load test1.
7
Unable to load test1.
8
Unable to load test1.
9

Unable to load test1.
51
Unable to load test1.
1
Unable to load test1.
8
Unable to load test1.
0
Unable to load test1.
1
Unable to load test1.
2

Unable to load test1.
0
Unable to load test1.
3

Unable to load test1.
0_______660
Unable to load test1.
61
Unable to load test1.
62
Unable to load test1.
63

Unable to load test1.
0_______665
Unable to load test1.
61____662
Unable to load test1.
68

Unable to load test1.
0
Unable to load test1.
70
Unable to load test1.
71
Unable to load test1.
2

Unable to load test1.
73

đầu ra

Unable to load test1.
0

Ghi chú. Nếu tương ứng “. php” không tìm thấy định nghĩa lớp, lỗi sau sẽ được hiển thị

Tóm lược. trong hướng dẫn này, bạn sẽ học cách tổ chức các tệp lớp của mình và tải chúng tự động bằng hàm PHP 

Unable to load test1.
14

Bạn nên giữ mỗi lớp PHP trong một tệp riêng biệt. Ngoài ra, tên của lớp phải giống với tên tệp. Ví dụ: tệp

Unable to load test1.
15 phải chứa lớp
Unable to load test1.
16

Trước khi sử dụng một lớp học, bạn cần phải

  • Đầu tiên, xác định lớp trong một tệp
  • Thứ hai, tải nó bằng cách sử dụng câu lệnh
    Unable to load test1.
    17,
    Unable to load test1.
    18,
    Unable to load test1.
    19 hoặc
    Unable to load test1.
    70

Giả sử rằng bạn có cấu trúc thư mục dự án sau

Unable to load test1.
8

Thư mục

Unable to load test1.
71 có tệp
Unable to load test1.
15 chứa lớp
Unable to load test1.
16 sau

Unable to load test1.
1

Từ chỉ số. php, bạn có thể tải tệp

Unable to load test1.
74 và sử dụng lớp
Unable to load test1.
16 như sau

Unable to load test1.
7

Giải pháp này hoạt động tốt nếu bạn có một số lượng nhỏ tệp. Khi số lượng tệp tăng lên, câu lệnh

Unable to load test1.
18 không mở rộng tốt

Để giải quyết vấn đề này, bạn có thể định nghĩa một hàm lấy tên lớp làm đối số và bao gồm tệp chứa định nghĩa lớp. Ví dụ

Unable to load test1.
7

Hàm

Unable to load test1.
77 tìm tệp lớp trong thư mục
Unable to load test1.
71 và bao gồm nó nếu tệp tồn tại. Và bạn có thể đặt hàm
Unable to load test1.
79 trong tệp
Unable to load test1.
70

Unable to load test1.
2

Để sử dụng hàm

Unable to load test1.
79 trong tệp
Unable to load test1.
72, bạn có thể bao gồm tệp
Unable to load test1.
70 và gọi hàm
Unable to load test1.
79

Unable to load test1.
7

Trình tải tự động với chức năng spl_autoload_register[]

PHP5. 1. 2 đã giới thiệu hàm

Unable to load test1.
14 tự động tải tệp lớp bất cứ khi nào bạn sử dụng lớp chưa được tải

PHP7. 2. 0 không dùng chức năng ma thuật

Unable to load test1.
76 và đề xuất sử dụng chức năng
Unable to load test1.
14 thay thế

Khi bạn sử dụng một lớp chưa được tải, PHP sẽ tự động tìm lệnh gọi hàm

Unable to load test1.
14

Hàm

Unable to load test1.
14 chấp nhận hàm gọi lại và gọi nó khi bạn cố gắng tạo, sử dụng một lớp chưa được tải

Để sử dụng hàm

Unable to load test1.
14, bạn có thể truyền hàm
Unable to load test1.
21 cho nó như sau

Unable to load test1.
5

Và từ tệp

Unable to load test1.
72, bạn không cần gọi hàm
Unable to load test1.
79 bất cứ khi nào bạn sử dụng một lớp trong thư mục
Unable to load test1.
71

Unable to load test1.
9

Nhiều chức năng tự động tải

Chức năng

Unable to load test1.
14 cho phép bạn sử dụng nhiều chức năng tự động tải. Hàm
Unable to load test1.
14 sẽ tạo một hàng các hàm tự động tải và chạy qua từng hàm theo thứ tự được xác định

Ví dụ

Unable to load test1.
2

Trong ví dụ này, PHP sẽ chạy tuần tự

Unable to load test1.
27,
Unable to load test1.
28 và
Unable to load test1.
29 để tải các tệp lớp

Để chứng minh điều này, hãy tạo một thư mục mới có tên là

Unable to load test1.
70 lưu trữ các tệp lớp dịch vụ và tạo một tệp
Unable to load test1.
71 bên trong thư mục
Unable to load test1.
70

Sau đây định nghĩa lớp

Unable to load test1.
73

Unable to load test1.
0

Thư mục dự án bây giờ trông như thế này

Unable to load test1.
10

Trong tệp

Unable to load test1.
70, bạn có thể định nghĩa một hàm tải các lớp từ thư mục
Unable to load test1.
70 và chuyển tên hàm cho hàm
Unable to load test1.
14 như thế này

Các lớp tự động tải là gì?

Hàm spl_autoload_register[] đăng ký bất kỳ số lượng trình tải tự động nào, cho phép các lớp và giao diện được tải tự động nếu chúng hiện chưa được xác định . Bằng cách đăng ký trình tải tự động, PHP có cơ hội cuối cùng để tải lớp hoặc giao diện trước khi lỗi xảy ra.

Làm cách nào để tự động tải các lớp PHP?

Tự động tải .
PHP có thể tự động tải các tệp lớp theo yêu cầu [Không cần câu lệnh yêu cầu rõ ràng];
Tên tệp phải phù hợp với trường hợp tên lớp kết thúc [mỗi lớp trong một tệp riêng];
Tên thư mục phải khớp với trường hợp của tên không gian tên;
__autoload[] đã KHÔNG ĐƯỢC DÙNG kể từ PHP 7. 2

Làm cách nào để thêm tự động tải trong PHP?

Phương pháp 2. Nhập một lệnh trong nhà soạn nhạc. tập tin json . Để sử dụng các thư viện trên cho dự án, bạn chỉ cần nhập phần bao gồm nhà cung cấp/autoload. lệnh php vào chỉ mục. tệp php trong dự án PHP .

Các lớp tự động tải trong WordPress là gì?

Tự động tải là một kỹ thuật trong PHP theo đó các lớp được tự động đưa vào . Điều này được thực hiện theo không gian tên của họ. Do đó, điều này loại bỏ sự cần thiết phải yêu cầu các tệp PHP theo cách thủ công. WP Autoload, một tập lệnh WordPress miễn phí, đưa ra một ví dụ.

Chủ Đề