摘要:注入是的重要特性。注入寫起來非常優(yōu)雅,在性能上也有好處避免了函數(shù)開銷。本文簡要介紹如何使用的注入。如果你不太了解,請先參考簡介和兩篇文章。注入的使用十分簡單。中需要自動提示的話,需要額外使用注明。感謝提供這個(gè)小竅門。
注入是Typecho-Framewrok的重要特性。注入寫起來非常優(yōu)雅,在性能上也有好處(避免了函數(shù)開銷)。本文簡要介紹如何使用Typecho-Framework的注入。如果你不太了解Typecho-Framework,請先參考Typecho Framework簡介和Typecho Framework: Hello world!兩篇文章。
注入的使用十分簡單。
首先我們在入口程序中聲明注入的配置文件:
Base::setInjectiveObjects(require(ROOT . "/config/injects.php"));
然后在配置文件config/injects.php中綁定需要注入的對象:
return array( "ending" => array("HelloServiceEnding"), );
這里我們將ending綁定到HelloServiceEnding這個(gè)我們自行實(shí)現(xiàn)的類。
Ending類包含一個(gè)方法,該方法返回一個(gè)END字符串:
namespace HelloService; class Ending { public function endWord() { return "END"; } }
在Action中,我們只需聲明ending變量即可實(shí)現(xiàn)注入:
namespace HelloAction; use TEMvcActionAbstractAction; /** * Hello * * @use AbstractAction */ class helloWorld extends AbstractAction { private $ending; public function execute() { return array("content", "Hello, world." . $this->ending->endWord()); } }
注入很爽吧?
注入會迷惑IDE。 比如,$this->ending->endWord()這句,PHPStorm中輸入$this->ending->之后無法提示、補(bǔ)全方法了。PHPStorm中需要自動提示的話,需要額外使用@var注明。(感謝suchasplus提供這個(gè)小竅門。)
撰文 SegmentFault
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/31840.html
摘要:代碼已經(jīng)開源,本文簡單介紹,希望能幫助了解。數(shù)據(jù)庫的適配器,支持。請求由容器處理,容器中包括請求響應(yīng)路由攔截器等對象。收到請求后,會生成相應(yīng)的請求和響應(yīng)對象,以注入的方式傳給。從獲取所需數(shù)據(jù)后,傳遞給的響應(yīng)對象。 Typecho Framework是SegmentFault所用的框架,由創(chuàng)始人joyqi親手打造。joyqi也是國內(nèi)知名博客平臺Typecho的作者。 Typecho F...
摘要:是所用的框架,本文將介紹如何用這個(gè)框架寫一個(gè)程序。在目錄下建立目錄,并在其中創(chuàng)建文件首先我們定義一個(gè)命名空間,我們的程序使用為命名空間。入口程序這樣基本上就完成了。會自動在目錄下找模板文件,約定大于配置。 Typecho Framework是SegmentFault所用的框架,本文將介紹如何用這個(gè)框架寫一個(gè)Hello World程序。如果你不了解Typecho Framework,請先...
摘要:是寫的一個(gè)框架。據(jù)說是參考了的思想。要先頁面上顯示我們還需要寫一下路由。打開由于中有用到數(shù)據(jù)庫,我們先注釋掉。文件中注釋這行。然后這樣可以通過訪問看到輸出了。 typecho framework是70寫的一個(gè)框架。據(jù)說是參考了java的思想。 項(xiàng)目地址:https://github.com/typecho/framework 參考項(xiàng)目:https://github.com/typec...
摘要:看起來很簡單吧其實(shí)里面還是有不少坑的。激活插件方法如果激活失敗直接拋出異常禁用插件方法如果禁用失敗直接拋出異常獲取插件配置面板配置面板個(gè)人用戶的配置面板插件實(shí)現(xiàn)方法插件流程插件的基本流程是這樣的。下一節(jié)老高會更詳細(xì)的說明插件類的方法。 最近老高正在編寫一個(gè)關(guān)于typecho的插件,由于typecho不像wordpress,有那么多的文檔參考,寫一個(gè)插件還是遇到了很多的坑,不過隨著研究的...
摘要:此文原本發(fā)表于我的博客老高的技術(shù)博客,歡迎和老高交流之前啰嗦了很多,現(xiàn)在開始寫核心代碼。至此我們已經(jīng)拿到了文章的永久鏈接,下一步就是給百度服務(wù)器發(fā)送數(shù)據(jù)了本節(jié)完 此文原本發(fā)表于我的博客 老高的技術(shù)博客 ,歡迎和老高交流! 之前啰嗦了很多,現(xiàn)在開始寫核心代碼。 分析一下,發(fā)布文章的時(shí)候,我們需要的信息就是當(dāng)前文章的URL,我們需要想辦法從$contents、 $class中拿到他。...
閱讀 3133·2021-11-19 09:40
閱讀 2430·2021-10-14 09:42
閱讀 1697·2021-09-22 15:34
閱讀 1440·2019-08-30 15:55
閱讀 775·2019-08-29 12:59
閱讀 412·2019-08-28 18:28
閱讀 1817·2019-08-26 13:42
閱讀 1518·2019-08-26 13:29