中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

thinkphp3有沒有門面類

發布時間:2022-04-07 17:03:20 來源:億速云 閱讀:135 作者:iii 欄目:編程語言

這篇文章主要介紹“thinkphp3有沒有門面類”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“thinkphp3有沒有門面類”文章能幫助大家解決問題。

thinkphp3有門面類。門面為容器中的類提供了一個靜態調用接口,擁有更好的可測試性和擴展性,可以為任何的非靜態類庫定義一個門面類,語法為“class Test{public function Class(){return路徑;}}”。

本文操作環境:Windows10系統、ThinkPHP3版、Dell G3電腦。

thinkphp3有門面類嗎

門面為容器中的類提供了一個靜態調用接口,相比于傳統的靜態方法調用, 帶來了更好的可測試性和擴展性,你可以為任何的非靜態類庫定義一個facade類

為什么使用門面

1、靜態方法和非靜態方法的區別(調用對象、引用變量不同)

靜態方法:是使用static關鍵字修飾的方法,又叫類方法.屬于類的,不屬于對象, 在實例化對象之前就可以通過類名.方法名調用靜態方法。 (靜態屬性,靜態方法都是屬于類的,可以直接通過類名調用)。

A.在靜態方法中,可以調用靜態方法。

B.在靜態方法中,不能調用非靜態方法。

C.在靜態方法中,可以引用類變量(即,static修飾的變量)。

D.在靜態方法中,不能引用成員變量(即,沒有static修飾的變量)。

E.在靜態方法中,不能使用super和this關鍵字

非靜態方法:是不含有static關鍵字修飾的普通方法,又稱為實例方法,成員方法。屬于對象的,不屬于類的。(成員屬性,成員方法是屬于對象的,必須通過new關鍵字創建對象后,再通過對象調用)。

A.在普通方法中,可以調用普通方法。

B.在普通方法中,可以調用靜態方法

C.在普通方法中,可以引用類變量和成員變量

D.在普通方法中,可以使用super和this關鍵字

2、靜態方法和非靜態方法的區別(調用方法不同)

靜態方法可以直接調用,類名調用和對象調用。(類名.方法名 / 對象名.方法名)

但是非靜態方法只能通過對象調用。(對象名.方法名)

3、靜態方法和非靜態方法的區別(生命周期不同)

靜態方法的生命周期跟相應的類一樣長,靜態方法和靜態變量會隨著類的定義而被分配和裝載入內存中。一直到線程結束,靜態屬性和方法才會被銷毀。(也就是靜態方法屬于類)

非靜態方法的生命周期和類的實例化對象一樣長,只有當類實例化了一個對象,非靜態方法才會被創建,而當這個對象被銷毀時,非靜態方法也馬上被銷毀。(也就是非靜態方法屬于對象)

總結

類方法可以直接通過類名調用,實例方法必需先實例化類,再初始化對象,然后通過類的實例對象才能調用

如何使用

1、創建一個需要放置門面類的文件夾 facade

2、寫好自己的公共類

3、在facade創建facade類代碼如下

use think/Facade;
class TestFacade extends Facade{
protected static function getFacadeClass(){
return '寫好的目標公共類絕對路徑';
}
}

4、調用這個公共類的時候可以直接使用門面類替換公共類,這樣公共類的非靜態方法也可以使用靜態調用了

關于“thinkphp3有沒有門面類”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鄢陵县| 忻城县| 颍上县| 大英县| 九寨沟县| 大安市| 泰安市| 大城县| 毕节市| 廊坊市| 湖南省| 钟山县| 南华县| 东城区| 枞阳县| 高邮市| 郑州市| 顺昌县| 辽源市| 临海市| 吉水县| 东海县| 建德市| 白沙| 河间市| 虎林市| 新营市| 东乡族自治县| 永安市| 浙江省| SHOW| 沙田区| 湘潭县| 衡水市| 广东省| 铁岭县| 剑川县| 龙井市| 屏东县| 黄山市| 远安县|