欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

trait函數(shù)怎么在PHP中使用-創(chuàng)新互聯(lián)

這篇文章給大家介紹trait函數(shù)怎么在PHP中使用,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

創(chuàng)新互聯(lián)主營柴桑網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP開發(fā),柴桑h5小程序制作搭建,柴桑網(wǎng)站營銷推廣歡迎柴桑等地區(qū)企業(yè)咨詢

trait


trait 是在一些類(Class)的應(yīng)該具備的特定的屬性或方法,而同父級(jí)的另外一些類應(yīng)該避免包含這些屬性和方法情況下使用的.

當(dāng)然, 這也和開發(fā)者對(duì)類的抽象能力有關(guān), 有些抽象能力好的, 可以減少對(duì) trait 的使用 但是這種情況應(yīng)該是無法避免的 不然 trait 出現(xiàn)就毫無意義了.

還有一種情況, 就是使用 trait 的時(shí)候, 可以起到的約束開發(fā)者的作用, 提醒開發(fā)者注意需要在開發(fā)的過程中調(diào)用 trait 的某些屬性和方法.

同事則提出了一個(gè)好問題, 接口(interface) 不也是這個(gè)作用么?

不急, 讓我們先看個(gè)例子:

比如你要收集網(wǎng)站上各類數(shù)據(jù), 開發(fā)了 Spider 類. Spider有個(gè)方法叫 request()負(fù)責(zé)請(qǐng)求.

<?php namespace XWSoul\Network;
class Spider
{
 public function request($url)
 {
 //do sth.
 }
}

但是采集數(shù)據(jù)的過程中, 有些網(wǎng)站對(duì)蜘蛛敏感有些則不. 對(duì)于敏感的網(wǎng)站, 我們給出了一個(gè)使用代理的解決方案. 但是使用代理是會(huì)影響抓取速度的. 這就產(chǎn)生了 Spider 的子類有些需要用代理, 而能不用代理則盡量不用的情況.

于是這個(gè)時(shí)候我們新增了一個(gè) trait Proxy:

<?php namespace XWSoul\Network;
trait Proxy
{

 protected $isProxy = false;

 public function useProxy($proxy)
 {
 //do sth proxy setups.
 $this->isProxy = true;
 return $this;
 }

 public function request($url)
 {
 if (!$this->isProxy) {
  throw new Exception("Please using proxy.");
 }
 //do sth.
 return parent::request($url);
 }
}

trait 重寫了 Spider 的request()方法, 限定了在沒有調(diào)用代理的情況下調(diào)用會(huì)拋出異常.

回到之前的問題, trait 這樣的用法和 接口(interface) 有什么區(qū)別?

接口的約束是前置的是定義初始就必須實(shí)現(xiàn)的, 他可以約束方法的實(shí)現(xiàn)卻無法約束方法的調(diào)用, trait 是一種后置的調(diào)用, 他已經(jīng)實(shí)現(xiàn)了方法, 關(guān)鍵的是, 他只對(duì)調(diào)用了自身的類產(chǎn)生約束(廢話一句), 而對(duì)沒有調(diào)用自身的類不產(chǎn)生影響(再一句廢話), 同時(shí)他是可復(fù)用的, 而且沒有破壞 Spider 類自身的實(shí)現(xiàn)增加, Spider 還是那個(gè) Spider.

關(guān)于trait函數(shù)怎么在PHP中使用就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

網(wǎng)站標(biāo)題:trait函數(shù)怎么在PHP中使用-創(chuàng)新互聯(lián)
轉(zhuǎn)載來源:http://www.aaarwkj.com/article26/hodcg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、網(wǎng)站導(dǎo)航、網(wǎng)站制作、做網(wǎng)站、網(wǎng)站設(shè)計(jì)、服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)
日韩商清av毛片网站| 日本熟人妻中文字幕在线| 欧美日本午夜福利在线观看| 久久久人妻91久久久久| 成年视频免费观看视频| 最新国产激情福利网站| 久久视热频这里只有精品| 国产高潮呻吟久久av| 黄片在线免费在线播放| 国产日产精品久久一区| 蜜臀午夜精品视频在线观看| 中文字幕有码在线朋友| 日本韩国三级理伦久久久| 熟女人妻精品一二三四| 国产精品一区在线播放| 人妻少妇精品视频二区| 精品一区2区3区4区| 亚洲日本熟妇在线视频| 日本在线不卡一区二区| 亚洲一区二区三区欧美精品| 国产黄色一区二区三区,| 久久综激情丁香开心婷婷| 日韩精品欧美精品一区二区| 91麻豆国产福利在线| 日韩精品二区在线观看| 欧美亚洲国产另类第一页| 水蜜桃在线观看一区二区国产| 成年视频免费观看视频| 亚洲熟妇人妻一区二区三区| 日本少妇一区二区99| 亚洲av永久精品一区二区三区| 视频播放一区二区三区毛片| 四虎最新在线播放视频| 欧美日韩一级性生活片| 人妻艳情一区二区三区| 熟妇女人妻丰满少妇中文| 欧美日韩欧美国产精品| 扒开少妇毛茸茸的大荫萍蒂| 中文字幕一区二区三区网站| 日韩欧美亚洲一区二区三区| 国产a情人一区二区国产|