php接口定義和具體說明

接口interface是一種類似於類的結構,可用於聲明實現類所必須聲明的方法,例如接口通常用來聲明api,而不是用來定義如何實現這個api。

雖然接口和抽象類很像,但接口只能包含方法原型,而不能包含任何完整定義了的方法。這樣可以避免使用抽象類的時候出現的方法衝突,從而能在給定的實現類上使用多個接口,實現多個接口時,接口方法不能有重名。

我們可以通過interface來定義一個接口,就像定義一個標準的類一樣,但其中定義所有的方法都是空的。接口中定義的所有方法都必須是public,這是接口的特性。

接口中也可以定義常量。接口常量和類常量的使用完全相同。 它們都是定值,不能被子類或子接口修改。

<?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;
    }
}

通常,在子類和父類之間存在邏輯上的層次結構時應當使用抽象類,而在希望支持差別較大的兩個或多個對象之間的特定交互行爲時,就應使用接口
發佈了33 篇原創文章 · 獲贊 17 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章