php数据接口代码 php简单的接口编写示例( 二 )


Note:
接口也可以继承,通过使用extends操作符 。
常量
接口中也可以定义常量 。接口常量和类常量的使用完全相同 。它们都是定值 , 不能被子类或子接口修改 。
范例
Example #1 接口代码示例
?php
// 声明一个'iTemplate'接口
interface iTemplate
{
public function setVariable($name, $var);
public function getHtml($template);
}
// 实现接口
// 下面的写法是正确的
class Template implements 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_replace('{' . $name . '}', $value, $template);
}
return $template;
}
}
// 下面的写法是错误的,会报错php数据接口代码:
// Fatal error: Class BadTemplate contains 1 abstract methods
// and must therefore be declared abstract (iTemplate::getHtml)
class BadTemplate implements iTemplate
{
private $vars = array();
public function setVariable($name, $var)
{
$this-vars[$name] = $var;
}
}
?
Example #2 Extendable Interfaces
?php
interface a
{
public function foo();
}
interface b extends a
{
public function baz(Baz $baz);
}
// 正确写法
class c implements b
{
public function foo()
{
}
public function baz(Baz $baz)
{
}
}
// 错误写法会导致一个fatal error
class d implements b
{
public function foo()
{
}
public function baz(Foo $foo)
{
}
}
?
Example #3 多个接口间的继承
?php
interface a
{
public function foo();
}
interface b
{
public function bar();
}
interface c extends a, b
{
public function baz();
}
class d implements c
{
public function foo()
{
}
public function bar()
{
}
public function baz()
{
}
}
?
Example #4 使用接口常量
?php
interface a
{
const b = 'Interface constant';
}
// 输出接口常量
echo a::b;
// 错误写法,因为常量的值不能被修改 。接口常量的概念和类常量是一样的 。
class b implements a
{
const b = 'Class constant';
}
?
你也可以看看instanceof关键字的文档 。
php中的API接口怎么写 ?以我目前php数据接口代码的能力没法理解这个问题 。但我举个例子php数据接口代码,可能并不是你想要的答案,但没准可以提醒一下 。我们用GOOGLE MAP API (开源)的时候 , 会引用一个类似接口的方法,方法有很多参数可以设置 。比如这是个引用地图的方法,它的里面写php数据接口代码了很多完整的方法,我这里就不放出来了,但是我举得例子是参数传递在最上面的initialize () (这里我们暂时当作接口)方法上,我们可以传递interface_zoom即缩放大小,interface_lati , interface_lngi就是经纬度等等参数,这些参数可以由我们自己处理,无论是从database还是什么其php数据接口代码他方法读取还是怎么运算 , 然后call这个initialize方法带指定参数就可以了,具体里面如何操作的地图,如何生成的地图 , 我们就不管了 。接口就是我们看到日常生活中的插座,它规定好了规格,是几项的插头,我们就做成几项的插头 , 具体里面什么线路我们不管 。方法中规定了什么类型的参数 , 我们就传什么类型的参数,具体里面有什么算法我们不管 。个人最自白的解释,与官方有出入 。

推荐阅读