Home > Article > Backend Development > How to implement multiple inheritance using interfaces in PHP? (code example)
Multiple inheritance is a property of object-oriented programming languages in which a subclass can inherit the properties of multiple parent or super classes. So how to implement multiple inheritance in PHP? The following article will introduce to you how to use interfaces to implement multiple inheritance. I hope it will be helpful to you.
PHP does not support multiple inheritance and only inherits one class at a time. However, we can achieve multiple inheritance by using the Interface or Trait attributes in PHP.
Let’s introduce how to use interface (Interface) to implement multiple inheritance in PHP. [Video tutorial recommendation: PHP tutorial]
In PHP, the interface block declares the set of functions to be defined using a class to implement this interface. A class can extend multiple interfaces, therefore, we can simulate multiple inheritance in PHP.
1. Use classes and interfaces to implement multiple inheritance
Syntax:
class child_class_name extends parent_class_name implements interface_name1, ...
Example:
<?php header("content-type:text/html;charset=utf-8"); class A { public function insideA() { echo "我在类A中"; } } interface B { public function insideB(); } class Multiple extends A implements B { function insideB() { echo "<br><br>我在接口中"; } public function insidemultiple() { echo "<br><br>我在继承类中"; } } $phpzww = new multiple(); $phpzww->insideA(); $phpzww->insideB(); $phpzww->insidemultiple(); ?>
Output:
# Code description: Interface "B" is used with class "A" to implement multiple inheritance. The important thing to remember is that it cannot define functions inside the interface, it should be defined in the subclass "Multiple". We call all functions using a subclass (Multiple) object named "phpzww".
2. Use multiple interfaces to implement multiple inheritance
Syntax:
class child_class_name implements interface_name1, interface_name2, ...
Example:
<?php header("content-type:text/html;charset=utf-8"); interface C { public function insideC(); } interface B { public function insideB(); } class Multiple implements B, C { // 接口B的功能 function insideB() { echo "<br><br>我在接口B中"; } // 接口C的功能 function insideC() { echo "<br><br>我在接口C中"; } public function insidemultiple() { echo "<br><br>我在接口类中"; } } $phpzww = new multiple(); $phpzww->insideC(); $phpzww->insideB(); $phpzww->insidemultiple(); ?>
Output:
Code description: In the above code example, there are two interfaces named "B" and "C", which play the role of base classes, And there is a subclass called "Multiple" and we use an object called "phpzww" to call all functions.
The above is the entire content of this article, I hope it will be helpful to everyone's study. For more exciting content, you can pay attention to the relevant tutorial columns of the PHP Chinese website! ! !
Recommended related articles:
How does PHP use the Trait feature to implement multiple inheritance? (code example)
The above is the detailed content of How to implement multiple inheritance using interfaces in PHP? (code example). For more information, please follow other related articles on the PHP Chinese website!