本文阅读大概需要 1 分钟
接口可以指定某些类必须实现哪些方法,但不需要定义这些方法的具体内容, 所以定义的所有方法都是空的
需要注意的点
要实现一个接口,使用implements
操作符。类中必须实现接口中定义的所有方法,类可以实现多个接口,用逗号来分割多个接口名称。
接口中所有的方法都必须是公有的,这是接口的特性
实现多个接口时,接口中的方法不能有重名
接口也可以通过
extends
操作符实现继承类要实现接口,必须使用和接口中所定义的方法完全一致的方式。
接口中也可以定义常量,不能被子类或子接口所覆盖
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27<?php
//声明一个'iTemplate'接口
interface iTemplate
{
public function setVariable ($name, $var);
public function getHtml ($template);
}
//实现接口
class Template implement iTemplate
{
private $vars = array();
public function setVariable($name, $var)
{
$this->vars[$name] = $var;
}
public function getHtml($template)
{
foreach($this->vars as $name => $value)
{
$template = str_repleace('{' . $name . '}', $value, $template);
}
return $template;
}
}