在本文中,我们将探讨如何利用PHP接口,它是PHP面向对象编程中最重要的结构模式之一。
接口使我们能够编写程序,指示类必须执行的公共方法,而无需包括实现特定方法的复杂性和过程。这意味着接口可以定义方法名称和参数,但不能定义方法的内容。任何实现接口的类都必须实现该接口定义的所有方法。
接口的特征类似于类,但是,只有interface关键字替换声明中的类短语,并且没有定义任何方法的内容。
示例
让我们创建一个接口并通过一个简单的示例实现它。<?php
Interface MyInterface {
public function getName();
public function getAge();
}
class MyClass implements MyFirstInterface{
public function getName() {
echo "My name A".'
';
}
public function getAge(){
echo "My Age 12";
}
}
$obj = new MyClass;
$obj->getName();
$obj->getAge();
?>
输出:My name A
My Age 12
说明:
在这里,我们声明了一个接口MyFirstInterface,其中包含两个方法getName和getAge,其中没有任何内容。然后,类MyClass实现此接口,并根据需要使用可用的方法。
让我们学习界面的一些重要特征:接口由没有内容的方法组成,这意味着接口方法是抽象方法。
接口中的每种方法都必须具有公共可见性范围。
接口与类并不完全相同,因为该类可以从一个类继承,但是该类可以实现一个或多个接口。
接口内不能存在任何变量。
注意:
我们可以利用接口实现多重继承,因为一个类可以实现多个接口,而只能扩展一个类。
示例
让我们用一个简单的例子进行测试。<?php
interface a{
public function printData();
}
interface b{
public function getData();
}
interface c extends a, b{
public function addData();
}
class d implements c{
public function printData(){
echo "I am printing";
}
public function getData(){
echo "I am reading data";
}
public function addData(){
echo "I am adding"
}
}
$myobj = new class d();
$myobj->printData();
$myobj->addData();
?>
输出:I am printing
I am adding
说明:
这里我们声明了三个接口,即'interface a','interface b','interface c'。在这种情况下,interface c还扩展了前两个接口。然后,我们声明了一个仅实现接口c的类,但是随着接口c扩展前两个接口,在“接口a”,“接口b”和“接口c”中声明的所有方法都可以在该类中使用。 d。这就是我们通过实现接口可以实现多重继承的方式。