Các loại constructor trong php
Trong bài viết này, chúng ta sẽ thảo luận về những khái niệm cơ bản về hàm tạo trong PHP. Bạn sẽ tìm hiểu mục đích của các hàm tạo PHP và cách sử dụng chúng Show
Trình xây dựng là gì?Đây là định nghĩa chính thức
Khi bạn khởi tạo một đối tượng của bất kỳ lớp nào và nếu lớp đó đã định nghĩa phương thức khởi tạo, nó sẽ tự động được gọi. Nếu phương thức khởi tạo đã định nghĩa bất kỳ đối số bắt buộc nào, thì bạn cũng phải chuyển các đối số đó khi bạn khởi tạo một đối tượng của lớp đó Hãy nhanh chóng xem một phương thức xây dựng trông như thế nào trong PHP Vì vậy, đó là cách bạn có thể định nghĩa một hàm tạo trong lớp của mình. Bạn phải định nghĩa phương thức author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>6 trong lớp của mình và nó sẽ trở thành phương thức khởi tạo cho lớp của bạn. Trong ví dụ trên, bất cứ khi nào bạn khởi tạo đối tượng author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>7, phương thức author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>6 sẽ được gọi trước. Điều quan trọng cần lưu ý là bạn phải định nghĩa một phương thức khởi tạo là công khai, nếu không bạn sẽ không thể khởi tạo một đối tượng của lớp của mình Trước PHP 5, để định nghĩa một hàm tạo, bạn sẽ sử dụng một hàm có cùng tên với lớp mà nó được định nghĩa và nó sẽ được coi là một phương thức hàm tạo. Bạn có thể quen với cách khai báo hàm tạo này từ các ngôn ngữ lập trình khác như C++. Trong PHP, chúng được gọi là các hàm tạo kiểu PHP4 và không nên sử dụng kiểu này vì chúng sẽ sớm bị phản đối. Hãy xem lại ví dụ trước để xem hàm tạo sẽ trông như thế nào trong phiên bản trước của PHP Tại thời điểm viết, ví dụ này vẫn hoạt động. dùng thử. Mục đích của một Constructor là gì?Bây giờ bạn đã biết cách khai báo một phương thức khởi dựng trong PHP, nhưng việc sử dụng một phương thức khởi tạo là gì? Đang khởi tạo các thuộc tính cần thiếtMục đích chính của phương thức khởi tạo là khởi tạo các thuộc tính của đối tượng khi nó được tạo. Lợi ích của phương pháp này là sau này bạn không phải gọi các phương thức setter để khởi tạo các thuộc tính của đối tượng sau khi một đối tượng được tạo. Vì vậy, nếu bạn nghĩ rằng một đối tượng phải có một vài thuộc tính được đặt, thì một phương thức khởi tạo là cách tốt nhất Hãy nhanh chóng xem qua ví dụ sau để hiểu cách thức hoạt động của nó. author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?> Như bạn có thể thấy, khi đối tượng 1 được khởi tạo, phương thứcauthor_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>6 được gọi. Phương thức author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>6 yêu cầu hai đối số và chúng tôi đã chuyển hai đối số đó khi chúng tôi tạo đối tượng mới. 4. Cuối cùng, chúng tôi đã khởi tạo các thuộc tính 5 và 6 thành các giá trị tương ứng được truyền trong phương thức author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>6. Vì vậy, theo cách này, bạn có thể khởi tạo các thuộc tính đối tượng bằng một phương thức khởi tạo Nếu bạn cố khởi tạo đối tượng 1 mà không chuyển bất kỳ đối số nào, bạn sẽ gặp lỗi nghiêm trọng, như được minh họa trong đoạn mã sau________số 8Vì vậy, bạn cần đảm bảo rằng bạn chuyển bất kỳ đối số bắt buộc nào khi bạn khởi tạo đối tượng 1Đối số Constructor kiểm tra kiểuTrên thực tế, bạn cũng có thể thực hiện kiểm tra kiểu nếu bạn muốn đảm bảo rằng các đối số thuộc các kiểu cụ thể 0Trong ví dụ trên, bạn phải truyền hai đối số đầu tiên thuộc loại author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>0 và đối số cuối cùng phải thuộc loại author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>1. Nếu bạn đã chuyển một giá trị chuỗi trong đối số cuối cùng, bạn sẽ gặp lỗi sau3 Vì vậy, đó là cách bạn có thể thực hiện kiểm tra kiểu nghiêm ngặt với các đối số hàm tạo Khởi tạo kết nối cơ sở dữ liệuMột cách sử dụng khác của hàm tạo là thực hiện một số thao tác I/O. ví dụ: mở tệp và bắt đầu đọc nội dung của tệp, bắt đầu yêu cầu API hoặc tạo kết nối cơ sở dữ liệu Hãy xem một ví dụ về hàm tạo tạo kết nối cơ sở dữ liệu 4Cách gọi một Constructor của lớp chaTrong phần cuối cùng này, chúng ta sẽ xem cách bạn có thể gọi các hàm tạo của lớp cha. Nếu bạn biết về khái niệm kế thừa, bạn sẽ biết rằng một lớp có thể mở rộng một lớp khác để xây dựng các chức năng của nó Bây giờ, có khả năng cả lớp con và lớp cha đều có hàm tạo riêng. Vì vậy, làm thế nào bạn có thể gọi hàm tạo của lớp cha khi một đối tượng lớp con đang được khởi tạo? Hãy cố gắng hiểu nó với một ví dụ 5Như bạn có thể thấy, lớp author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>2 mở rộng lớp author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>3. Bây giờ, khi đối tượng author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>2 được khởi tạo, phương thức author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>5 của lớp author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>2 được gọi. Trong phương thức này, chúng tôi đã sử dụng từ khóa đặc biệt author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>7 để gọi phương thức author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>5 của lớp cha. Và do đó, cuối cùng nó sẽ gọi phương thức author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>5 của lớp author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>3. Luôn luôn là một cách tốt để gọi phương thức author_name = $name; $this->author_email = $email; } public function getAuthorName() { return $this->author_name; } public function getAuthorEmail() { return $this->author_email; } } $objTutsplusAuthor = new tutsplusAuthor("John", "[email protected]"); echo $objTutsplusAuthor->getAuthorName(); echo $objTutsplusAuthor->getAuthorEmail(); ?>5 của lớp cha nếu lớp của bạn mở rộng bất kỳ lớp nào Sự kết luậnHôm nay, chúng ta đã thảo luận về hàm tạo trong PHP, cùng với một số ví dụ thực tế. Bạn đã xem cách tạo hàm tạo và một số trường hợp sử dụng hàm tạo trong các lớp PHP Có bao nhiêu loại constructor trong PHP?Các loại Constructor trong PHP là gì? . three types of Constructor are mainly utilized.
3 loại hàm tạo là gì?Có 3 loại hàm tạo chủ yếu trong C++, Các hàm tạo mặc định, Tham số hóa và Sao chép .
4 loại hàm tạo là gì?Các loại hàm tạo . Nhà xây dựng mặc định Trình xây dựng được tham số hóa Sao chép công cụ xây dựng Trình tạo tĩnh Nhà thầu tư nhân Các loại hàm tạo của hàm tạo trong PHP là gì?Hàm tạo cho phép bạn khởi tạo các thuộc tính của đối tượng khi tạo đối tượng . Nếu bạn tạo một hàm __construct(), PHP sẽ tự động gọi hàm này khi bạn tạo một đối tượng từ một lớp. Lưu ý rằng hàm khởi tạo bắt đầu bằng hai dấu gạch dưới (__). |