站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        下面由thinkphp框架教程欄目給大家介紹如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享),希望對需要的朋友有所幫助!

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        使用ThinkPHP框架快速搭建網(wǎng)站

        實驗環(huán)境:

        • 1. WAMP(集成的那種,最Easy的幾乎不需要配置)
        • 2. ZendStudio7.2(中文網(wǎng)址http://www.zendstudio.net/,里面提供下載,在線注冊機以及使用教程)
        • 3. ThinkPHP框架+百度UEditor編輯器插件
        • 4. Win7-64bit操作系統(tǒng)
        • 5. 瀏覽器(火狐,IE,Chrome),外加火狐FireBug插件用于調(diào)試以及偷樣式

        第一步:找網(wǎng)頁模板(不會美工,PS,見諒。。)

        前端頁面我找的是一個大學(xué)的實驗室,這里就不貼了,很普通的那種。后臺直接下載的模板,感覺蠻漂亮的,運行后如下圖:

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        第二步:初識百度UEditor插件

        由于我要做的是實驗室的網(wǎng)站。實驗室網(wǎng)站主要內(nèi)容在如下幾個方面:

        • 介紹實驗室的成員
        • 實驗室的項目,成果等
        • 實驗室的新聞以及學(xué)術(shù)交流信息

        可見,信息主要偏重于后臺的新聞,文章信息的發(fā)布,而前臺幾乎不存在編輯。所以重點要在后臺實現(xiàn)一個方便的文章發(fā)布體系。

        我選用了百度出品的UEditor所見即所得編輯器。主要是JS實現(xiàn)的,整合到后臺后如下所示,功能真的很多哇:

        關(guān)于UEditor的如何整合到網(wǎng)站中,請參考UEditor的官網(wǎng),里面有詳細(xì)教程。

        第三步:初識ThinkPHP框架

        下面開始介紹ThinkPHP框架,首先為了加強感性認(rèn)識,先看一看ThinkPHP工程的目錄結(jié)構(gòu):

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        文件夾:

        • admin是后臺工程文件夾
        • home是前臺工程
        • public里面用于存放CSS文件,JS文件以及網(wǎng)頁里面的圖片
        • ThinkPHP框架
        • ueditor是百度編輯器

        下面三個PHP文件:

        • admin.php是后臺工程的入口文件,
        • index.php是前臺工程的入口文件。
        • config.inc.php,由于這個小項目的幾乎所有數(shù)據(jù)都放在數(shù)據(jù)庫里,而前后臺都要連接數(shù)據(jù)庫,所以所有的數(shù)據(jù)庫配置代碼放在了它里面。

        由于我這里面實際是兩個工程(home和admin),只要理解其中一個即可,故下面只介紹后臺,即admin部分。

        接著往下看,看一下admin.php文件,這是需要了解的第一個文件,即后臺的入口文件。

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        幾個宏定義分別指明了:

        • 1. ThinkPHP框架的路徑
        • 2. 后臺應(yīng)用程序目錄
        • 3. 后臺應(yīng)用程序名稱
        • 4. 開啟調(diào)試模式
        • 5. 包含ThinkPHP框架下的ThinkPHP.php文件(重要!

        下面新建一個小工程來演示一下開發(fā)過程:

        比如整個工程的大目錄是xxx,然后把ThinkPHP框架拷貝進來,并添加admin.php文件(如上圖中的代碼)

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)



        此時在瀏覽器里面輸入:http://localhost/xxx/admin.php自動生成admin目錄,如下圖


        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)


        打開admin目錄,內(nèi)容如下:

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)


        其中主要關(guān)注四個文件夾:

        1. Conf 存放工程配置文件(比如定義一些常量什么的)

        2. Lib (最重要!存放MVC模式中的模型類和控制器類)

        3. Tpl(存放模板文件,按道理前面我們下載的模板應(yīng)該放在這里)

        4. Runtime(存放運行時文件,比如緩存啊,數(shù)據(jù)庫表緩存什么的)

        最后貼出瀏覽器上的運行結(jié)果。。對不起貼的有點晚。


        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        第四步:初識MVC模式

        到這里,不得不提一下在ThinkPHP中的MVC的概念。MVC很有名,叫做模型-視圖-控制器模式。

        在ThinkPHP里面:

        模型(Model)可以認(rèn)為就是一張數(shù)據(jù)庫表。那我做的工程來說:

        對于一篇文章(新聞),它的屬性包括ID號,標(biāo)題,作者,創(chuàng)建時間,最后修改時間以及文章內(nèi)容。這就是一篇文章的模型。然后就按照這個思路建立對應(yīng)的數(shù)據(jù)庫表:

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        視圖(View)可以認(rèn)為就是用戶看到的東西,即模板,或者說皮膚。

        比如前面貼出的后臺模板,那個在ThinkPHP概念中就是視圖。

        控制器(Action)可以認(rèn)為是視圖與模型之前的橋梁。因為網(wǎng)站上顯示的內(nèi)容基本全部來自眾多模型們(數(shù)據(jù)庫表們),而控制器負(fù)責(zé)的就是決定在哪些情況下顯示哪些模型里面的哪些數(shù)據(jù)。還是拿我的例子說,我后臺工程的首頁對應(yīng)的控制器是Index控制器。(Index控制器為所有工程的默認(rèn)控制器)。但是你想,一個網(wǎng)站的首頁一般是有很多按鈕啊,超鏈接啊什么的,可以跳到其他地方去的東西。貼張圖:

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        這是我的后臺首頁??梢钥吹阶筮呌袑?dǎo)航欄,右下邊列出了數(shù)據(jù)庫當(dāng)前的文章信息,可以看到一共有三篇文章。比如我現(xiàn)在可能想做:

        1. 把文章”1111測試文章發(fā)布系統(tǒng)”刪除

        2. 把文章”詹姆斯高捧第3座MVP獎杯”改成”詹姆斯高捧第4座MVP獎杯”

        3. 新添加一篇別的文章

        這就對應(yīng)了Index控制器的不同功能了,也就是Index控制器類IndexAction的不同方法(比如取名edit()方法,delete()方法,add()方法)。當(dāng)然之所以會看到頁面顯示,是因為默認(rèn)情況下執(zhí)行Index控制器的Index()方法,在該方法中調(diào)用display()方法顯示模板(視圖)。不信可以看默認(rèn)的文件,里面的Index控制器的Index方法實現(xiàn)的就是HelloThinkPHP的歡迎頁面。

        比如:

        IndexAction目錄為:

        /xxx/admin/Lib/Action/IndexAction.class.php

        內(nèi)容為:

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        可以看到,默認(rèn)情況下在index方法中調(diào)用了$this->display()

        (注意看IndexAction 繼承Action類,display方法是Action類的方法);

        調(diào)用display()方法后,ThinkPHP會在對應(yīng)工程的Tpl文件夾下的Index文件下下找index.html文件。其中前一個Index文件夾對應(yīng)的是Index控制器,index.html對應(yīng)的是index()方法。

        所以,一個控制器類對應(yīng)一個模板文件夾。具體對應(yīng)多少個模板跟控制器類有多少個方法以及有多少個方法需要display有關(guān)。

        故,此時對應(yīng)的模板文件路徑為:

        /xxx/admin/Tpl/Index/index.html

        細(xì)心的朋友可能要問了,你這里只說了視圖(模板)和控制器啊,模型呢?你是怎么知道數(shù)據(jù)庫里的那三篇文章的信息的呢?其實不然,我在index方法里面還做了一些事情,下圖是精簡版index方法:

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        可以看到,第一步,我就實例化了一個模型。模型名字是Article,前面說到模型就是數(shù)據(jù)庫表,此時查看一下有哪些數(shù)據(jù)庫表:

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)


        第一個表名字是think_article,可以看到還差一個前綴think_,其實這個是在配置文件中指定的,還記得前文所述的config.inc.php嗎? 其配置代碼如下所示:

        <?php return array(      'DB_TYPE'              =>'mysql',      'DB_HOST'             =>'localhost',      'DB_NAME'            =>數(shù)據(jù)庫名字,      'DB_USER'             =>用戶名,      'DB_PWD'              =>密碼,      'DB_PORT'             =>'3306',      'DB_PREFIX'           =>'think_', ); ?>

        第二條語句就是查詢數(shù)據(jù)庫。ThinkPHP提供了很多種查詢數(shù)據(jù)庫的方法,我使用的是連貫操作法。

        執(zhí)行完第二條語句后$new_list變量就存儲了所有文章的信息,那么怎么把它顯示到界面上去呢?

        看第三句話,它把該變量分配給了一個叫做’new_list’的變量 (好像同名了哇。。不過沒關(guān)系,關(guān)鍵是assign方法),然后我們在模板文件里面進行替換就OK啦。默認(rèn)情況下,在HTML里面寫 {$new_list}就OK啦。當(dāng)然,這里面的new_list是一個復(fù)合的變量,不是單純的數(shù)字或者字符串。。不過ThinkPHP提供了很多循環(huán)的方法給我們使用,很是方便。

        源碼下載

        最后給出示例工程xxx的源碼。有需要的朋友可以下載,可以很快的了解ThinkPHP的大概原理。

        源碼功能:

        • 1.后臺管理員登陸
        • 2.添加文章,編輯文章,刪除文章
        • 3.前臺顯示文章

        使用方法:

        • 1.解壓到網(wǎng)站根目錄下,默認(rèn)是www文件夾下的xxx文件夾

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        • 2.在MySQL中新建一個數(shù)據(jù)庫,比如rubydb,整理成utf8-genaral-ci
        • 3.導(dǎo)入數(shù)據(jù)庫表文件夾下的兩個數(shù)據(jù)庫表 think_articlethink_user,導(dǎo)入后入下圖:

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        • 4.配置Config.inc.php文件

        [php] view plain copy

        1. <span style="font-size:16px;"><?php
        2. return array(
        3. 'DB_TYPE' => 'mysql',
        4. 'DB_HOST' => 'localhost',
        5. 'DB_NAME' => '自己建一個數(shù)據(jù)庫',//需要新建一個數(shù)據(jù)庫!名字叫
        6. 'DB_USER' => '你的數(shù)據(jù)庫用戶名', //數(shù)據(jù)庫用戶名
        7. 'DB_PWD' => '你的數(shù)據(jù)庫密碼',//數(shù)據(jù)庫登錄密碼
        8. 'DB_PORT' => '3306',
        9. 'DB_PREFIX' <span style="white-space:pre"> </span>=> 'think_',//數(shù)據(jù)庫表名前綴
        10. );
        11. ?></span>


        可見,上面的DB_NAME,DB_USER,DB_PWD需要修改

        分別是

        'DB_NAME'=>'rubydb' , 'DB_USER'  =>'你的mysql登錄賬號' , 'DB_PWD'   =>'你的mysql登錄密碼'
        • 5.運行 http://localhost/xxx/admin.php,彈出后臺登錄頁面:

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        輸入數(shù)據(jù)庫think_user里面的用戶信息: ruby97,密碼ruby97 ,再輸入驗證碼即可登錄。

        如何快速使用ThinkPHP框架快速搭建網(wǎng)站(分享)

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 国产精品免费看久久久| 免费精品一区二区三区第35| 成人区人妻精品一区二区不卡网站 | 黑巨人与欧美精品一区 | 国产精品青草久久久久福利99 | WWW国产精品内射老师| 亚洲爆乳精品无码一区二区| 粉嫩精品美女国产在线观看| 国产成人精品一区二区秒拍| 无码精品人妻一区二区三区中| 久久精品国产亚洲5555| 国产精品va久久久久久久| 精品国产亚洲一区二区三区| 国产欧美日韩综合精品一区二区| 亚洲精品中文字幕乱码三区| 日韩一区二区三区在线精品| 精品伦精品一区二区三区视频 | 久久777国产线看观看精品| 国产日韩精品欧美一区喷水| 少妇人妻偷人精品免费视频| 亚洲精品乱码久久久久久蜜桃| 麻豆精品国产自产在线观看一区| 国产精品人人做人人爽| 丰满人妻熟妇乱又伦精品劲| 国产69精品久久久久9999| 老司机国内精品久久久久| 国产日韩一区在线精品欧美玲| 99久久人妻无码精品系列蜜桃 | 一本大道无码日韩精品影视| 精品久久久久一区二区三区| 精品国产爽爽AV| 精品久久久久久无码中文字幕 | 老司机国内精品久久久久| 精品国产美女福利到在线不卡| 97精品国产福利一区二区三区| 国产精品特级毛片一区二区三区| 精品无码一区二区三区爱欲| 精品一区二区三区在线成人| 人妻少妇精品中文字幕av蜜桃| 亚洲国产精品特色大片观看完整版| 亚洲日韩精品无码专区网站|