Chúng tôi đã gọi hàm tạo cha mẹ trong vài bài viết trước mà không thực sự đi sâu vào chi tiết về nó. Nếu lớp con không định nghĩa hàm tạo, nó sẽ kế thừa hàm tạo cha như bất kỳ phương thức nào khác. Nếu một lớp con định nghĩa một hàm tạo của riêng nó, thì hàm tạo cha sẽ bị ghi đè. Để gọi hàm tạo cha, một lệnh gọi tới hàm cha. __construct[] phải được thực hiện từ hàm tạo con
Tóm tắt lại. Xem lại bài viết trước và mã
PHP — P66. So sánh đối tượng
PHP cho phép bạn so sánh các đối tượng với toán tử so sánh và nhận dạng. Khi sử dụng toán tử so sánh…
Blog. thiên tài. io
php-youtube-tutorials/66 So sánh đối tượng
Mã cho hướng dẫn PHP trên YouTube. Đóng góp cho sự phát triển của dinocajic/php-youtube-tutorials bằng cách tạo…
github. com
Nhìn vào lớp Lamborghini, nó chỉ là một lớp trống mở rộng Car. Lớp Car có chứa hàm tạo
Chúng ta có thể khởi tạo lớp và sử dụng hàm tạo cha mà không chỉ định hàm tạo bên trong lớp Lamborghini
Gọi phương thức get_year_make_and_model[] mang lại 1999 Lamborghini Diablo SV. Điều đó có nghĩa là hàm tạo cha trên thực tế đã được gọi và nó đặt các thuộc tính $year, $make và $model
Điều gì sẽ xảy ra nếu lớp Lamborghini có một hàm tạo? . làm, mô hình và màu sắc. Chúng ta sẽ không vượt qua năm nay
Bây giờ chúng ta có thể thử một số mã kiểm tra và xem nó có hoạt động không
Và chắc chắn, nó làm. Bạn có thể nghĩ rằng không nên xem xét rằng chúng tôi chưa bao giờ chuyển năm cho nhà xây dựng mẹ. Vì chúng ta đang gọi hàm tạo Lamborghini, nên hàm tạo cha không bao giờ được gọi
Nhưng nếu chúng ta muốn gọi hàm tạo cha và đặt năm trong khi sử dụng hàm tạo Lamborghini thì sao?
Lần này, chúng tôi sẽ sửa đổi hàm tạo để chấp nhận 4 đối số. $year, $make, $model và $secret_code. Tại sao lại là $secret_code? . Tài sản đó sẽ tồn tại bên trong lớp Lamborghini. Điều này sẽ làm cho mã dễ theo dõi hơn
public function construct[$year, $make, $model, $secret_code] { }
Chúng ta có thể đặt các thuộc tính $year, $make và $model bằng cách sử dụng từ khóa $this hoặc chúng ta có thể ưa thích và sử dụng hàm tạo chính. Làm cách nào để chúng ta gọi hàm tạo cha từ bên trong hàm tạo con?
parent::__construct[]
Điều này bây giờ đặt $secret_code bên trong lớp Lamborghini và gọi hàm tạo Ô tô để đặt ba thuộc tính khác
Hãy thêm các phương thức getter/setter cho thuộc tính $secret_code để chúng ta có thể thực hiện một số thử nghiệm bổ sung
Chạy mã cho chúng tôi kết quả mà chúng tôi đang tìm kiếm. Lamborghini Diablo SV 1999 0x4225sdf4
Một điều cuối cùng cần lưu ý là vị trí của cuộc gọi đến hàm tạo cha. Mặc dù các ngôn ngữ lập trình hướng đối tượng khác yêu cầu bạn phải gọi hàm tạo cha trước, nhưng trong PHP bạn có thể gọi nó bất kỳ lúc nào trong hàm tạo. Đoạn mã sau cũng sẽ hoạt động
Tôi vẫn muốn gọi hàm tạo cha ngay lập tức và sau đó thực thi bất kỳ mã bổ sung nào trong hàm tạo của lớp con đề phòng trường hợp PHP thay đổi ý định trong tương lai
dinocajic/php-7-youtube-tutorials
Mã cho PHP 7. x hướng dẫn trên YouTube
github. com
Ví dụ-2. Sử dụng các hàm tạo không tham số do người dùng định nghĩa
Tập lệnh sau đây cho thấy việc sử dụng hàm tạo ít tham số do người dùng định nghĩa bằng cách sử dụng tập lệnh PHP. Ở đây, phương thức khởi tạo được khai báo với tên của lớp để khởi tạo các biến lớp với các giá trị mặc định và phương thức display[] được khai báo để in các giá trị của các biến lớp
đầu ra
Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh. Khi đối tượng của lớp, $objuser, được khai báo, thì phương thức khởi tạo ít tham số, User[], được gọi tự động và khởi tạo các biến lớp với các giá trị mặc định
Ví dụ-3. Sử dụng hàm tạo được tham số hóa do người dùng định nghĩa
Tập lệnh sau đây cho thấy việc sử dụng hàm tạo được tham số hóa do người dùng định nghĩa bằng cách sử dụng tập lệnh PHP. Hàm tạo có tên, User[], chứa ba tham số ở đây sẽ được sử dụng để lưu trữ các giá trị được truyền vào thời điểm tạo đối tượng và khởi tạo các biến lớp với các giá trị đó. Phương thức display[] sẽ được sử dụng để in các biến lớp
đầu ra
Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh. Ở đây, phương thức display[] được gọi bằng cách sử dụng đối tượng lớp
Ví dụ-4. Gọi hàm tạo cha từ hàm tạo con
Đoạn script sau đây cho thấy cách hàm tạo của lớp cha có thể được gọi bên trong hàm tạo của lớp con. Ở đây, c1 là lớp cha có hàm tạo mặc định và biến lớp có tên $a. c2 là lớp con có một hàm tạo mặc định, trong đó hàm tạo cha đã được gọi bằng cách sử dụng từ khóa cha và một biến lớp có tên $b. Lớp c2 có phương thức add[] để tính tổng của $a và $b
đầu ra
Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh. Hàm tạo cha đã được gọi ở đây để khởi tạo giá trị của biến, $a
Video hướng dẫn
Sự kết luận
Việc sử dụng các loại hàm tạo khác nhau trong PHP hướng đối tượng đã được trình bày trong hướng dẫn này bằng cách sử dụng các ví dụ đơn giản để giúp người đọc biết các tính năng của hàm tạo và áp dụng nó đúng cách trong tập lệnh của họ