亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于PHP實(shí)現(xiàn)MVC模式的方法

        2020-11-02 02:36:18高麗
        電腦知識(shí)與技術(shù) 2020年26期
        關(guān)鍵詞:實(shí)現(xiàn)方法

        高麗

        摘要:為了提高軟件開發(fā)中代碼的質(zhì)量、效率,框架結(jié)構(gòu)在Web應(yīng)用開發(fā)中已經(jīng)被廣泛地應(yīng)用。MVC模式將業(yè)務(wù)邏輯、數(shù)據(jù)、顯示進(jìn)行分離,極大提高Web應(yīng)用程序的可用性和可維護(hù)性。該文通過PHP語言實(shí)現(xiàn)MVC模式。

        關(guān)鍵詞:PHP;MVC模式;實(shí)現(xiàn)方法

        中圖分類號(hào):TP3? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A

        文章編號(hào):1009-3044(2020)26-0203-02

        開發(fā)互聯(lián)網(wǎng)中,采用基于B/S模式實(shí)現(xiàn)Web應(yīng)用程序,用戶界面通過瀏覽器實(shí)現(xiàn),系統(tǒng)功能集中到服務(wù)器上。PHP具有跨平臺(tái)性的多用途腳本語言,因?yàn)榫庉嫼唵?、?shí)用性強(qiáng)、業(yè)務(wù)框架多等特點(diǎn)成為當(dāng)前的適合Web開發(fā)的熱門語言。在PHP中使用MVC越來越流行了,尤其一些開源的框架中,有利于Web應(yīng)用程序的管理和維護(hù),提高開發(fā)效率。

        1 MVC模式

        MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設(shè)計(jì)典范,用一種業(yè)務(wù)邏輯、數(shù)據(jù)、界面顯示分離的方法組織代碼,將業(yè)務(wù)邏輯聚集到一個(gè)部件里面,在改進(jìn)和個(gè)性化定制界面及用戶交互的同時(shí),不需要重新編寫業(yè)務(wù)邏輯。MVC被獨(dú)特地發(fā)展起來用于映射傳統(tǒng)的輸入、處理和輸出功能在一個(gè)邏輯的圖形化用戶界面的結(jié)構(gòu)中。MVC工作原理如圖1所示。

        其中Model(模型)是應(yīng)用程序中用于處理應(yīng)用程序數(shù)據(jù)邏輯的部分,通常模型對(duì)象負(fù)責(zé)在數(shù)據(jù)庫中存取數(shù)據(jù)。View(視圖)是應(yīng)用程序中處理數(shù)據(jù)顯示的部分,依據(jù)模型數(shù)據(jù)而創(chuàng)建。Controller(控制器)是應(yīng)用程序中處理用戶交互的部分,主要負(fù)責(zé)從視圖讀取數(shù)據(jù),控制用戶輸入,并向模型發(fā)送數(shù)據(jù)。MVC模式使得代碼分層、分類,開發(fā)和設(shè)計(jì)的工作相對(duì)獨(dú)立。

        2 MVC框架的分析與實(shí)現(xiàn)

        2.1 MVC在PHP中的功能

        Model(模型),主要實(shí)現(xiàn)程序的應(yīng)用功能和邏輯,在PHP中主要負(fù)責(zé)數(shù)據(jù)的生成和管理;view(視圖),負(fù)責(zé)輸出,處理是怎樣調(diào)用模板以及資源文件;controller(控制器),負(fù)責(zé)轉(zhuǎn)發(fā)請(qǐng)求并處理,決定調(diào)用的視圖和使用的數(shù)據(jù)。

        2.2 MVC在PHP中的實(shí)現(xiàn)

        為了解決一類共同問題總結(jié)出來的一套可復(fù)用的解決方案,這是軟件設(shè)計(jì)模式產(chǎn)生的初衷。不管是客戶端還是移動(dòng)端,MVC的分層設(shè)計(jì)模式解決了軟件開發(fā)中的可復(fù)用、單一職責(zé)、解耦的問題,PHP語言中的MVC設(shè)置模式也是如此。在MVC基本原理模型中展示了模型、視圖與控制器的關(guān)系與作用,但是在實(shí)際開發(fā)設(shè)計(jì)時(shí),還需要設(shè)計(jì)其基于PHP的實(shí)際模型,繼而真實(shí)的在Web程序開發(fā)時(shí)應(yīng)用MVC模式,基于PHP的MVC工作原理如圖2所示。

        2.2.1 URL訪問方式:單一入口

        模式采用單一入口,約定請(qǐng)求頁面時(shí)的URL,利用它來確定文件在系統(tǒng)中的具體位置,從根本上穩(wěn)定系統(tǒng)和提高安全性。單一的入口使得系統(tǒng)更便捷的驗(yàn)證系統(tǒng)身份,不用單獨(dú)分開驗(yàn)證每一個(gè)文件,提高了驗(yàn)證的效率。同時(shí),只需要在入口文件中修改相應(yīng)的規(guī)定來重寫URL。在實(shí)現(xiàn)中,設(shè)定唯一的訪問文件為index.php,如果想要訪問并且得到正確結(jié)果,只能通過這入口文件,其中通過改變參數(shù)來控制訪問的頁面、決定顯示的結(jié)果或者調(diào)用不同的控制器。URL設(shè)置及MVC模式目錄如下圖3-圖4所示。

        2.2.2 控制器(Controller)

        控制器是連通整個(gè)模式的關(guān)鍵,所以它的設(shè)計(jì)至關(guān)重要。因?yàn)榭蚣苣J讲捎脝我蝗肟冢脩舻乃行畔⒄?qǐng)求都要從相同的入口進(jìn)入,但實(shí)際的數(shù)據(jù)請(qǐng)求由控制器來篩選,并在模型處理完相應(yīng)數(shù)據(jù)后,調(diào)用視圖將回復(fù)數(shù)據(jù)顯示界面,反饋于用戶。實(shí)際開發(fā)時(shí),需要調(diào)取配置文件、加載函數(shù)庫及框架模式中心控制等來完成設(shè)置控制器。在這里控制器文件命名為controller.PHP,其關(guān)鍵代碼實(shí)現(xiàn)過程如下。

        2.2.3 視圖(View)

        視圖,即用戶界面。對(duì)于程序員來說,視圖按照模型中的設(shè)計(jì)信息轉(zhuǎn)換成界面顯示給用戶,在此需要在應(yīng)用程序界面加入一些PHP邏輯處理。在視圖文件view.php中定義了View類,在該類中定義display($output)方法,并在該方法中打印$output的值,用于顯示數(shù)據(jù)。主要代碼如下:

        視圖在設(shè)計(jì)時(shí),可以根據(jù)不同的請(qǐng)求來調(diào)用不同的視圖類,以不同的形式顯示數(shù)據(jù)信息,但這些請(qǐng)求不是由視圖來處理,它只是顯示數(shù)據(jù)信息。同樣,也存在多個(gè)視圖同時(shí)在訪問模型,只要信息在該模型中,則會(huì)顯示具體內(nèi)容信息,產(chǎn)生視圖。這樣增加了視圖的作用,可以只針對(duì)試圖進(jìn)行頁面的設(shè)計(jì)。

        2.2.4 模型(Model)

        模型的功能主要是處理不同信息的請(qǐng)求,配合控制器完成工作。利用面向?qū)ο筮M(jìn)行編碼,模型在一個(gè)PHP 應(yīng)用程序中,通常是一個(gè)類(或多個(gè))。一般這個(gè)類是處理或保存數(shù)據(jù)表。在模型文件model.php中定義了Model類,在該類中定義getData()方法,用于請(qǐng)求數(shù)據(jù)的返回。主要代碼如下:

        2.2.5 運(yùn)行時(shí)(Runtime)

        在入口文件中定義參數(shù),使得控制器根據(jù)不同的參數(shù)獲取不同的數(shù)據(jù)??刂破髦邪枰囊晥D和模型文件,根據(jù)模型中定義的對(duì)象調(diào)用數(shù)據(jù),再通過視圖對(duì)象輸出調(diào)用的數(shù)據(jù)。

        3 結(jié)束語

        本文利用PHP以一簡單案例闡述了MVC設(shè)計(jì)模式的實(shí)現(xiàn)方法。MVC是一種優(yōu)秀的設(shè)計(jì)模式,代碼更易于理解。如要改變一些信息在顯示界面,只需要修改View層程序,如數(shù)據(jù)庫結(jié)構(gòu)發(fā)生變化,只需要更改Model 層程序。讓基于面向?qū)ο蟮腤eb開發(fā)變得更有效率。

        參考文獻(xiàn):

        [1] 張睿涵.基于經(jīng)典MVC架構(gòu)的實(shí)現(xiàn)Web應(yīng)用系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].數(shù)碼世界,2017(4):17-18.

        [2] 張偉偉.PHP中MVC模式下類的動(dòng)態(tài)加載實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2019,15(34):60-61.

        [3] 楊婷婷.PHP開發(fā)中MVC模式的應(yīng)用研究[J].淮南職業(yè)技術(shù)學(xué)院學(xué)報(bào),2019,19(2):84-85.

        [4] 閆曉亮,焦素云.MVC模式PHP開發(fā)框架[J].長春工業(yè)大學(xué)學(xué)報(bào),2016,37(6):592-596.

        【通聯(lián)編輯:代影】

        猜你喜歡
        實(shí)現(xiàn)方法
        高職英語教學(xué)價(jià)值定位及其實(shí)現(xiàn)
        東方教育(2016年20期)2017-01-17 21:21:45
        淺談業(yè)務(wù)連續(xù)性管理的實(shí)現(xiàn)方法
        工程地質(zhì)在優(yōu)慕課教學(xué)資源平臺(tái)信息化教學(xué)案例
        考試周刊(2016年25期)2016-05-26 01:16:33
        建筑工程造價(jià)信息化管理實(shí)現(xiàn)方法探討
        小學(xué)信息技術(shù)教育目標(biāo)實(shí)現(xiàn)方法
        江西教育C(2015年3期)2010-11-18 21:14:37
        男人天堂av在线成人av| 久久久亚洲欧洲日产国码αv| 亚洲人成无码www久久久| 国产91对白在线观看| 一区两区三区视频在线观看| 日本一区二区视频免费在线看| 国产高清av首播原创麻豆| 在线国产小视频| 久久久亚洲女精品aa| 老熟女老女人国产老太| 亚洲av无码久久精品狠狠爱浪潮 | 国产成人一区二区三区乱| 色欲色欲天天天www亚洲伊| 亚洲第一网站免费视频| 日韩少妇人妻一区二区| av天堂最新在线播放| 亚洲综合色区另类av| 亚洲AV毛片无码成人区httP | 9久9久女女热精品视频免费观看| 日本国产精品高清在线| 亚洲av一二三区成人影片| 毛片在线播放a| 国产欧美亚洲精品第二区首页| 少妇人妻无奈的跪趴翘起| 国产69精品久久久久777| 国产v视频| 中文字幕精品乱码一区| 亚洲最大成人网站| 国产性一交一乱一伦一色一情| 欧美日本视频一区| 福利利视频在线观看免费| 无码av一区二区大桥久未| 夜夜春精品视频| 久久精品国产亚洲av专区| 丰满大爆乳波霸奶| 激情亚洲一区国产精品| 亚洲国产日韩av一区二区| 激情亚洲一区国产精品久久| 国产农村乱子伦精品视频| 亚州毛色毛片免费观看| 国产高清视频在线不卡一区|