Hướng dẫn what is the purpose of $this and extend in php? - mục đích của $this và mở rộng trong php là gì?
Nếu bạn muốn tạo các phiên bản chuyên dụng của các lớp tích hợp (giả sử, để tạo HTML màu khi được xuất, có các biến thành viên dễ truy cập thay vì phương thức hoặc có phương thức tiện ích), bạn có thể tiếp tục và mở rộng chúng. Show Ví dụ #1 mở rộng các lớp học tích hợp
__construct($o, $m) Ví dụ trên sẽ xuất ra một cái gì đó tương tự như: object(My_Reflection_Method)#1 (3) { ["visibility"]=> array(1) { [0]=> string(6) "public" } ["name"]=> string(1) "x" ["class"]=> string(1) "U" }
Thận trọng Nếu bạn đang ghi đè lên hàm tạo, hãy nhớ gọi cho hàm tạo của cha mẹ trước khi bất kỳ mã nào bạn chèn. Không làm như vậy sẽ dẫn đến những điều sau: Khelaz tại gmail dot com ¶ ¶ 11 năm trước
getSource() {
Kế thừa là một nguyên tắc lập trình được thiết lập tốt và PHP sử dụng nguyên tắc này trong mô hình đối tượng của nó. Nguyên tắc này sẽ ảnh hưởng đến cách nhiều lớp và đối tượng liên quan đến nhau. Ví dụ, khi mở rộng một lớp, lớp con kế thừa tất cả các phương thức, thuộc tính và hằng số được bảo vệ và được bảo vệ từ lớp cha. Trừ khi một lớp ghi đè các phương pháp đó, họ sẽ giữ lại chức năng ban đầu của chúng. Điều này rất hữu ích để xác định và trừu tượng hóa chức năng và cho phép thực hiện chức năng bổ sung trong các đối tượng tương tự mà không cần phải thực hiện lại tất cả các chức năng được chia sẻ. Các phương pháp riêng tư của lớp cha không thể truy cập được vào lớp trẻ. Do đó, các lớp trẻ em có thể tự tái tạo một phương thức riêng tư mà không quan tâm đến các quy tắc thừa kế bình thường. Tuy nhiên, trước Php 8.0.0, các hạn chế Khả năng hiển thị của các phương pháp, tính chất và hằng số có thể được thư giãn, ví dụ: Một phương pháp
Nó không được phép ghi đè một thuộc tính đọc-viết với thuộc tính readonly hoặc ngược lại.
/** 9Ví dụ #1 ví dụ kế thừaTrả về loại tương thích với các lớp bên trong Trước PHP 8.1, hầu hết các lớp hoặc phương thức nội bộ đã không khai báo loại trả lại của họ và bất kỳ loại hoàn trả nào được cho phép khi mở rộng chúng. Kể từ Php 8.1.0, hầu hết các phương thức nội bộ bắt đầu "dự kiến" khai báo loại trả lại của họ, trong trường hợp đó, loại phương thức trả về phải tương thích với cha mẹ được mở rộng; Nếu không, một thông báo không nhận được được phát ra. Lưu ý rằng việc thiếu một tuyên bố hoàn trả rõ ràng cũng được coi là sự không phù hợp đặc trưng, và do đó dẫn đến thông báo từ chối. Nếu loại trả về không thể được khai báo cho một phương thức ghi đè do các mối quan tâm tương thích phiên bản chéo PHP, một thuộc tính
Ví dụ #2 Phương thức ghi đè không khai báo bất kỳ loại trả về nào
Ví dụ #3 Phương thức ghi đè khai báo loại trả về sai
Ví dụ #4 Phương thức ghi đè tuyên bố loại trả về sai mà không có thông báo không dùng nữa ¶ Jackdracona tại msn dot com ¶
public function 9
12 năm trước ¶ Mohammad Istanbouly ¶
__construct($o, $m) 35 năm trước ¶ Jackdracona tại msn dot com ¶
__construct($o, $m) 912 năm trước ¶ Mohammad Istanbouly ¶
Fatal error: Internal error: Failed to retrieve the reflection object 45 năm trước ¶ Strata_ranger tại hotmail dot com
Fatal error: Internal error: Failed to retrieve the reflection object 9Akashwebdev tại gmail dot com ¶ ¶ 7 năm trước
Extending class ReflectionFunction to get source code of function
3Jarrod tại Squarecrow Dot Com ¶ ¶ 13 năm trước
Extending class ReflectionFunction to get source code of function
8Niemans tại pbsolo dot nl ¶ ¶ 2 năm trước
Extending class ReflectionFunction to get source code of function
8Mục đích của $ cái này trong PHP là gì?$ Đây là một từ khóa dành riêng trong PHP đề cập đến đối tượng gọi. Nó thường là đối tượng mà phương thức thuộc về, nhưng có thể là một đối tượng khác nếu phương thức được gọi là tĩnh từ bối cảnh của một đối tượng thứ cấp. Từ khóa này chỉ áp dụng cho các phương thức nội bộ.refers to the calling object. It is usually the object to which the method belongs, but possibly another object if the method is called statically from the context of a secondary object. This keyword is only applicable to internal methods.
Mục đích của từ khóa cha trong PHP là gì?Phụ huynh :: Trình truy cập nó đề cập đến các phương thức và thuộc tính trong lớp cha từ phạm vi của một lớp con.Vì lớp con nên ghi đè các thuộc tính theo mặc định, người truy cập có thể đề cập rõ ràng đến thuộc tính của lớp cha.Nó cũng tiện dụng khi cả hai lớp có thuộc tính có cùng tên.It refers to methods and properties in a parent class from the scope of a child class. Since the child class should override the properties by default, the accessor can explicitly refer to the parent class's property. It is also handy when both classes have properties with the same name.
Lớp PHP có thể mở rộng hai lớp không?Các lớp, lớp trường hợp, đối tượng và đặc điểm đều có thể mở rộng không nhiều hơn một lớp nhưng có thể mở rộng nhiều đặc điểm cùng một lúc.can all extend no more than one class but can extend multiple traits at the same time.
Tại sao nhiều kế thừa không được sử dụng trong PHP?Ngôn ngữ lập trình PHP thậm chí không hỗ trợ nhiều kế thừa/thừa kế.PHP chỉ hỗ trợ nhiều kế thừa bằng cách sử dụng các giao diện hoặc đặc điểm trong PHP thay vì các lớp để chúng tôi có thể thực hiện nó.Đặc điểm là một loại lớp cho phép nhiều lớp trường hợp, đối tượng, lớp và đặc điểm.. PHP supports multiple inheritances only by using interfaces or Traits in PHP instead of classes so that we can implement it. Traits are a type of class that enables multiple case classes, objects, classes, and traits. |