PHP bao gồm lớp
Lisa và tôi (Graham) hiện đang sống tại trung tâm đào tạo của chúng tôi ở Melksham - rất vui được gặp các cựu đại biểu ở đây - nhưng hãy kiểm tra trước khi đến. Chúng ta còn lâu mới không hoạt động - đúng hơn là tận hưởng khoảng thời gian mà chúng ta đã nghỉ hưu nhưng vẫn đủ khỏe mạnh về tinh thần và thể chất để hoạt động Show
Tôi cũng đang hoạt động trong nhiều lĩnh vực khác và vẫn chăm sóc rất nhiều trang web - bạn có thể tìm thấy một chỉ mục ((tại đây)) Mặc dù việc mô đun hóa mã của chúng ta theo cách chúng ta có là hữu ích, nhưng tốt nhất là mọi trang đề cập đến các sự kiện đều thực hiện điều đó thông qua các đối tượng Sự kiện. Vì vậy, với mục đích bảo trì, tốt nhất là chuyển định nghĩa lớp thành một tệp riêng mà chúng tôi có thể gọi từ các trang khác nhau. Để bắt đầu, hãy tạo một tệp mới—tôi sẽ gọi các đối tượng của tôi. inc, và tôi sẽ đặt nó trong cùng thư mục với showevent. php—và lưu lại. Đặt định nghĩa lớp vào tệp đó, như trong Liệt kê 5 Liệt kê 5—Một tệp định nghĩa lớp riêng biệt (các đối tượng. inc)eventid = $this_eventid; $this->month = $event["eventMonth"]; $this->day = $event["eventDay"]; $this->year = $event["eventYear"]; $this->title = $event["eventTitle"]; $this->description = $event["eventDesc"]; } // Free resources. mysql_free_result ( $results ); } } ?> Lưu ý rằng toàn bộ phần được đặt trong dấu phân cách và ?> Để thực sự sử dụng đối tượng, chúng ta cần cung cấp định nghĩa lớp từ bên trong trang. Để làm điều đó, chúng ta có thể sử dụng hàm require(), như trong Liệt kê 6 Liệt kê 6—Làm cho định nghĩa lớp có sẵn (showevent. php)require("objects.inc"); import_request_variables('pgc', ''); $this_event = new Event($eventid); printf ( " Hàm request() hoạt động như thể tất cả mã trong các đối tượng. inc đã được bao gồm trong tệp này tại thời điểm đó Bốn chức năng cho phép bạn bao gồm mã từ một tệp khác. bao gồm (), yêu cầu (), bao gồm_once () và yêu cầu (). Cả bốn đều có thể lấy một tệp cục bộ hoặc URL làm đầu vào. Sự khác biệt giữa các chức năng bao gồm và yêu cầu là bao gồm() và bao gồm_once() chỉ đưa ra cảnh báo nếu không thể truy xuất tài nguyên; . Bởi vì chúng tôi cần định nghĩa lớp để tiếp tục, chúng tôi đang sử dụng yêu cầu () Các hàm include_once() và require_once() rất hữu ích trong các trường hợp nhiều tệp có thể tham chiếu cùng một mã được bao gồm; . Bởi vì một chức năng không thể được xác định lại sau khi nó được khai báo, hạn chế này có thể giúp ngăn ngừa lỗi Umm… Tôi có xu hướng INCLUDE_ONCE tất cả các tệp cơ sở chứa các lớp phổ biến nhất mà tôi biết mình sẽ cần
Và sau đó, đó là một trường hợp đơn giản chỉ BAO GỒM CÁC CHẾ ĐỘ XEM… ? 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 học của mình và tải chúng tự động bằng hàm PHP 4 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 5 phải chứa lớp 6 Trước khi sử dụng một lớp học, bạn cần phải
Giả sử rằng bạn có cấu trúc thư mục dự án sau require("objects.inc"); import_request_variables('pgc', ''); $this_event = new Event($eventid); printf ( "0 Thư mục 1 có tệp 5 chứa lớp 6 sau
Từ chỉ mục. php, bạn có thể tải tệp 4 và sử dụng lớp 6 như sau
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 8 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ụ require("objects.inc"); import_request_variables('pgc', ''); $this_event = new Event($eventid); printf ( "9 Hàm 7 tìm tệp lớp trong thư mục 1 và bao gồm nó nếu tệp tồn tại. Và bạn có thể đặt hàm 9 trong tệp require("objects.inc"); import_request_variables('pgc', ''); $this_event = new Event($eventid); printf ( "90 4Để sử dụng hàm 9 trong tệp require("objects.inc"); import_request_variables('pgc', ''); $this_event = new Event($eventid); printf ( "92, bạn có thể bao gồm tệp require("objects.inc"); import_request_variables('pgc', ''); $this_event = new Event($eventid); printf ( "90 và gọi hàm 9 9Trình tải tự động với chức năng spl_autoload_register()PHP5. 1. 2 đã giới thiệu hàm 4 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 require("objects.inc"); import_request_variables('pgc', ''); $this_event = new Event($eventid); printf ( "96 và đề xuất sử dụng chức năng 4 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 4 Hàm 4 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 4, bạn có thể truyền hàm 41 cho nó như sau7 Và từ tệp require("objects.inc"); import_request_variables('pgc', ''); $this_event = new Event($eventid); printf ( "92, bạn không cần gọi hàm 9 bất cứ khi nào bạn sử dụng một lớp trong thư mục 1 1 Nhiều chức năng tự động tảiHàm 4 cho phép bạn sử dụng nhiều chức năng tự động tải. Hàm 4 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ụ 4 Trong ví dụ này, PHP sẽ chạy tuần tự 47, 48 và 49 để 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à 90 lưu trữ các tệp lớp dịch vụ và tạo một tệp 91 bên trong thư mục 90Sau đây định nghĩa lớp 932 Thư mục dự án bây giờ trông như thế này 0 Trong tệp require("objects.inc"); import_request_variables('pgc', ''); $this_event = new Event($eventid); printf ( "90, bạn có thể định nghĩa một hàm tải các lớp từ thư mục 90 và chuyển tên hàm cho hàm 4 như thế này Làm cách nào để bao gồm tệp lớp trong PHP?Một lớp PHP – Ví dụ mã. Sử dụng lớp PHP trong tệp PHP. . Định nghĩa một lớp với từ khóa “class” theo sau là tên của lớp Xác định phương thức khởi tạo bằng cách sử dụng “__construct” theo sau là các đối số. . Xác định các biến lớp. . Xác định các phương thức sử dụng từ khóa “hàm” Chúng ta có thể sử dụng lớp trong PHP không?Một lớp PHP và nói chung là lập trình hướng đối tượng, cung cấp các cách tiếp cận bổ sung cho khả năng sử dụng lại và có thể được sử dụng cho nhiều mục đích khác nhau: They can describe entities that have known properties and behaviors. They can be used as messages to functions and other objects.
Sự khác biệt giữa yêu cầu và bao gồm trong PHP là gì?bao gồm () Vs yêu cầu ()
. Đồng thời, câu lệnh require() tạo ra lỗi nghiêm trọng và chấm dứt tập lệnh
Làm cách nào tôi có thể truy cập một lớp trong PHP?Tạo một thể hiện của một lớp
. // tạo một thể hiện của lớp Html $myPage = new Html; . using the familiar arrow, -> , syntax: // creates an instance of the Html class $myPage = new Html; // prints Whoomp, there it is! |