首頁  >  文章  >  後端開發  >  php接口是什麼

php接口是什麼

(*-*)浩
(*-*)浩原創
2019-09-25 11:04:023330瀏覽

php接口是什麼

PHP介面(interface)的特性 

1、介面的方法必須是公開的。 

2、介面的方法預設是抽象的,所以不在方法名稱前面加abstract。 (推薦學習:PHP程式設計從入門到精通

3、介面可以定義常數,但不能定義成員屬性,常數的定義和用法和類別中常數一樣。

4、類別可以實現多個介面(相當於把多個功能集於一身,如手機實現了小靈通、MP3、MP4的功能) 

5、介面也可以繼承接口。

PHP同大多數的物件導向語言一樣,並不支援多重繼承。如果需要實現多重繼承功能,在PHP中,可以透過接口,它是PHP解決多重繼承問題的方法,在php5.4版本之後有個類別的新特性trait,有興趣的可以百度下。

介面的想法是指定一個實作了該介面的類別必須實現的一系列函數。如果沒有實作介面中指定的方法,將產生一個致命錯誤。

當有很多人一起開發一個專案時,可能都會去調用別人寫的一些類,那你就會問,我怎麼知道他的某個功能的實現方法是怎麼命名的呢,這時候PHP介面類別interface就起到作用了,當我們定義了一個介面類別時,它裡面的方式是下面的子類別必須實現的,例如:

介面interface 是一個規定,給人繼承用的東西,有點像抽象類別

在裡面定義的方法,卻不去實例化,而需要別的類別去implements 它,而且必須一一實作介面定義的所有方法。

interface Shop
{
public function buy($gid);
public function sell($gid);
public function view($gid);
}

我宣告一個shop介面類,定義了三個方法:買(buy),賣(sell),看(view),那麼繼承此類的所有子類別都必須實現這3個方法少一個都不行,如果子類別沒有實作這些話,就無法運作。

其實介面類別說白了,就是一個類別的模板,一個類別的規定,如果你屬於這類,你就必須遵循我的規定,少一個都不行,但是具體你怎麼做,我不管,那是你的事,如:

class BaseShop implements Shop
{
public function buy($gid)
{
echo('你购买了ID为 :'.$gid.'的商品');
}
public function sell($gid)
{
echo('你卖了ID为 :'.$gid.'的商品');
}
public function view($gid)
{
echo('你查看了ID为 :'.$gid.'的商品');
}
}

以上是php接口是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn