Zend Framework是一款PHP開(kāi)發(fā)框架,ZF2原生支持模塊的概念,任意第三方的php程序只要是遵循Zend的編碼規(guī)范和代碼結(jié)構(gòu),都可以變成一個(gè)Zend模塊。 軟件特色1、模塊化(ModuleManager) 比起ZF1來(lái)說(shuō),ZF2原生支持模塊的概念,任意第三方php程序,只要遵循Zend的編碼規(guī)范和代碼結(jié)構(gòu),都可以變成一個(gè)Zend模塊。目前已經(jīng)有一批試驗(yàn)階段的模塊出爐(參看ZF2 Modules)。 其中不乏像Doctrine ORM這樣優(yōu)秀的項(xiàng)目。可以預(yù)見(jiàn)的是,隨著ZF2的慢慢成熟,越來(lái)越多可以選擇的模塊將大量涌現(xiàn),可能未來(lái)基于ZF2的項(xiàng)目開(kāi)發(fā),會(huì)像搭積木一樣輕松簡(jiǎn)單。 2、事件驅(qū)動(dòng)(EventManager) 傳統(tǒng)程序中,代碼都是按線性順序執(zhí)行的,所以開(kāi)發(fā)中往往很難將一些功能獨(dú)立為一個(gè)組件或模塊。事件驅(qū)動(dòng),或者也可以叫鉤子(Hook),改變了普通程序流程化的運(yùn)行方式,應(yīng)用了事件驅(qū)動(dòng)之后,程序?qū)⒊尸F(xiàn)"注冊(cè)事件" => "觸發(fā)事件"的跳躍式運(yùn)行,可以在不影響原有程序代碼的,很容易的在任意位置加入新的業(yè)務(wù)邏輯,讓項(xiàng)目的開(kāi)發(fā)變得極為靈活。 3、服務(wù)管理器(ServiceManager) 服務(wù)管理器的概念來(lái)自于"服務(wù)定位模式(Service locator pattern)"的編程思想。這種思想提倡將程序中的每一個(gè)獨(dú)立功能提取出來(lái)作為一個(gè)"服務(wù)",每一個(gè)服務(wù)都是獨(dú)立可喚醒的,只有服務(wù)被調(diào)用時(shí),服務(wù)相關(guān)的程序才會(huì)啟動(dòng)。這也就是ZF2性能提升的秘密所在,ZF2的MVC啟動(dòng)流程中無(wú)處不體現(xiàn)ServiceLocator的思想,功能模塊的調(diào)用極為"吝嗇",想必會(huì)給以前對(duì)Zend性能有意見(jiàn)的開(kāi)發(fā)者一個(gè)大大的驚喜。 4、依賴注入(Di Dependency Injection) 依賴注入廣泛應(yīng)用于Java的主流框架中,可以很好的解除大型應(yīng)用中的耦合。ZF2引入Di也經(jīng)過(guò)了反復(fù)的考量和權(quán)衡,即使進(jìn)入beta階段,Di仍然一度作為ZF2的基本實(shí)現(xiàn)方案,整個(gè)Mvc的配置基于Di。最終為了避免陷入Di可能造成的元數(shù)據(jù)式編程泥潭(Metaprogramming), Di只是作為ZF2的底層實(shí)現(xiàn),上層加入了ServiceManager。普通開(kāi)發(fā)者在使用ZF2的過(guò)程中不需要接觸到Di的層面。不過(guò)這并不妨礙DI作為一個(gè)優(yōu)秀的php組件存在并發(fā)揮作用。 5、社會(huì)化編程 ZF2的代碼完全托管在Github,借助Github的優(yōu)秀設(shè)計(jì),任何人都可以輕松的通過(guò)fork參與ZF2的項(xiàng)目建設(shè),甚至提交新的模塊功能。筆者AlloVince也幫助Zend小組修復(fù)了一些BUG,發(fā)現(xiàn)Zend小組響應(yīng)非常快(從沒(méi)有超過(guò)24小時(shí)),對(duì)反饋的意見(jiàn)也會(huì)花時(shí)間認(rèn)真解答。所以參與ZF2項(xiàng)目是參與php開(kāi)源項(xiàng)目一個(gè)不錯(cuò)的選擇。 使用方法環(huán)境配置 1、首先你要確定你的PHP版本不低于5.1.4,但強(qiáng)烈建議使用 5.2.3 或更高版本。 2、確保你的php.ini開(kāi)啟了如下模塊: 1)extension=php_pdo.dll 2)extension=php_pdo_mysql.dll 3、打開(kāi)Apache的配置文件httpd.conf確保你已經(jīng)開(kāi)啟如下模塊: 1)LoadModule rewrite_module modules/mod_rewrite.so 2)繼續(xù)查找httpd.conf文件,如果AllowOverride為None的話,請(qǐng)一定把None都改成all 4、設(shè)置環(huán)境變量: 如果出現(xiàn)“php.exe命令不存在。。。”就把php.exe目錄也放到環(huán)境變量中:D:\software\wamp\bin\php\php5.3.10 5、ok啦,測(cè)試下: 6、zend framework配置輸入 zf show version 顯示版本信息。 7、輸入zf create project f:\web\zendframe 就在我的php環(huán)境下創(chuàng)建了zendframe項(xiàng)目 8、將你下載的zend framework的library下面的zend文件拷貝到項(xiàng)目的library目錄下。 9、恭喜你,在地址欄輸入//127.0.0.1/zendframe/public顯示界面,表明zend framework配置成功! 使用編程語(yǔ)言寫(xiě)的程序,由于每條指令都對(duì)應(yīng)計(jì)算機(jī)一個(gè)特定的基本動(dòng)作,所以程序占用內(nèi)存少、執(zhí)行效率高。 |
1xps15重裝系統(tǒng)(安裝系統(tǒng))圖文詳細(xì)教程
2Win10系統(tǒng)QQ瀏覽器頁(yè)面總是崩潰怎樣辦!
3一鍵重裝windows10系統(tǒng)圖文詳細(xì)教程
4教你進(jìn)入WindowsXP系統(tǒng)后假死機(jī)的處理辦法
5win10系統(tǒng)電腦zip文件打開(kāi)不了的處理辦法
6筆記本電腦沒(méi)有聲音怎樣辦,本文教您筆記本電腦沒(méi)有...
8電腦系統(tǒng)一鍵自動(dòng)重裝圖文詳細(xì)教程
1深度技術(shù)win10正式版ghost(32位)旗艦......
2番茄花園win10 X86 ghost 標(biāo)準(zhǔn)通......
3番茄花園Win10_Ghost Win10 64......
4雨林木風(fēng) GHOST WIN10 X64 快速裝......
5深度技術(shù)GHOST WIN10 X64 尊貴專業(yè)......
6筆記本W(wǎng)in10系統(tǒng) 64位官方正式版2023年......
7筆記本win10正式版ghost(32位)旗艦免......
8雨林木風(fēng)win10(32位)ghost 修正專業(yè)......