久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

PHP教程 54 - ThinkPHP(1)

 知識(shí)書館 2022-07-19 發(fā)布于廣東

一,、簡介

1,、 什么是ThinkPHP

它是一個(gè)MVC框架

2、 什么是框架

框架,,即framework,。其實(shí)就是某種應(yīng)用的半成品,就是一組組件,,供你選用完成你自己的系統(tǒng),。

l Zend Framework

l Yii

l Symfony

l Codelgniter

l ThinkPHP

l ……

3、 什么是MVC

MVC是施樂帕克研究中心 (Xerox PARC)在八十年代為編程語言Smalltalk80發(fā)明的一種軟件設(shè)計(jì)模式,,至今已被廣泛使用,。

MVC是一個(gè)設(shè)計(jì)模式,它強(qiáng)制性的使應(yīng)用程序的輸入,、處理和輸出分開,。使用MVC應(yīng)用程序被分成三個(gè)核心部件:模型、視圖,、控制器,。

MModel模型

VView視圖

CControl 控制器

快速入門

控制器

視圖

模型

實(shí)用項(xiàng)

4、 介紹thinkphp

l http://

l 下載thinkphp3.0

l 直接部署到項(xiàng)目中

l php5.2

thinkphp1.0          php5.0

thinkphp3.0               php5.2

thinkphp3.2.2           php5.3

項(xiàng)目布署流程:

1)  解壓thinkphp,,并進(jìn)入到解壓出來的文件夾

2)  ThinkPHP文件夾放在我們的項(xiàng)目中

5,、 快速入門

1)  開發(fā)項(xiàng)目入口文件

2)  運(yùn)行以上程序,自動(dòng)創(chuàng)建相應(yīng)的程序文件

看到以上界面,,說明項(xiàng)目創(chuàng)建成功

在我們的項(xiàng)目中,,自動(dòng)產(chǎn)生了一些文件夾,如下圖所示:

l Common              項(xiàng)目公共文件目錄

l Conf                      項(xiàng)目配置目錄

l Lang                     項(xiàng)目語言包目錄

l Lib                         項(xiàng)目類庫目錄

l Tpl                         項(xiàng)目模板目錄

l Runtime               項(xiàng)目運(yùn)行時(shí)目錄

l ~runtime.php     這個(gè)文件會(huì)自動(dòng)將項(xiàng)目的當(dāng)前配置,、公共函數(shù)等程序編譯到這個(gè)文件中,,下次程序運(yùn)行時(shí),直接運(yùn)行這個(gè)文件即可,。

以上URL中的Index會(huì)被自動(dòng)處理為模塊名

以上URL中的index會(huì)被自動(dòng)處理為動(dòng)作名

3)  開啟調(diào)試模式

代碼:

運(yùn)行:

開啟調(diào)試模式之后,,如果發(fā)生了一些錯(cuò)誤,會(huì)有一些提示信息,,建議:

開發(fā)時(shí),,開啟調(diào)試模式

布署時(shí),關(guān)閉調(diào)試模

如果你的項(xiàng)目路徑與本題相同,,可以不定義三個(gè)路徑常量

注意:開啟調(diào)試后,,不會(huì)產(chǎn)生runtime.php文件

4)  分析項(xiàng)目入口文件

5)默認(rèn)配置

為什么輸入地址之后,可以看到內(nèi)容

因?yàn)槭褂幸陨?/span>url時(shí),,會(huì)自動(dòng)加載Index模塊控制器下的index方法

在框架配置文件中,復(fù)制兩個(gè)配置選項(xiàng)

將以上選項(xiàng)放在項(xiàng)目配置文件中

6)  添加新的控制器以及方法

Lib/Action下創(chuàng)建新的控制器GoodsAction

GoodsAction中添加新方法add

運(yùn)行以上程序:

add方法添加指定模板并顯示

一個(gè)項(xiàng)目對(duì)應(yīng)一個(gè)數(shù)據(jù)庫

一個(gè)數(shù)據(jù)庫中包含很多數(shù)據(jù)表

一個(gè)數(shù)據(jù)表就是一個(gè)模塊

一個(gè)模塊可以對(duì)應(yīng)一個(gè)控制器

Tpl下創(chuàng)建Goods文件夾,,用于存放所有Goods模塊下的模板

修改控制器代碼:

運(yùn)行:

7)  配置項(xiàng)目的虛擬主機(jī)

修改apache配置文件:

修改hosts文件:

重啟apache并重新運(yùn)行:

二,、控制器

1、 什么是控制器

控制器用于接收和處理用戶的請(qǐng)求

2,、 定義控制器

Lib/Action下創(chuàng)建控制器文件

文件名:模塊名(首字母大寫)Action.class.php

如:我們有一張數(shù)據(jù)表:member,,會(huì)員表

/Lib/Action/MemberAction.class.php

控制器內(nèi)容:

class 模塊名(首字母大寫)Action  extends Action{

}

必須繼承父類控制器Action

代碼:

3、 url調(diào)度模式

url的調(diào)度模式就是url的訪問方式

ThinkPHP支持四種URL模式,,可以通過設(shè)置URL_MODEL參數(shù)來定義

這個(gè)配置選項(xiàng)的值共有四個(gè)

0    :普通模式

1       pathinfo模式(默認(rèn))

2       rewrite模式

3       :兼容模式

1)  普通模式

語法:

http://項(xiàng)目/入口文件?m=模塊名&a=動(dòng)作名

運(yùn)行:

2)  pathinfo模式

語法:

http://項(xiàng)目/入口文件/模塊名/動(dòng)作名

運(yùn)行:

在項(xiàng)目的配置文件中,,可以修改以下選項(xiàng)修改路徑分隔符

URL_PATHINFO_DEPR

訪問時(shí):

3)  rewrite模式

(1)      修改config.php配置選項(xiàng)

(2)      httpd.conf配置文件中加載了mod_rewrite.so模塊

3AllowOverride None None改為 All

4)把下面的內(nèi)容保存為.htaccess文件放到入口文件的同級(jí)目錄下

<IfModule mod_rewrite.c>

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

</IfModule>

語法:

http://項(xiàng)目/模塊名/動(dòng)作名

運(yùn)行:

4)  兼容模式

語法:

http://項(xiàng)目/入口文件?s=/模塊名/動(dòng)作名

運(yùn)行:

4、 空操作

空操作是指系統(tǒng)在找不到指定的操作方法的時(shí)候,,會(huì)定位到空操作(_empty)方法來執(zhí)行,,利用這個(gè)機(jī)制,我們可以實(shí)現(xiàn)錯(cuò)誤頁面和一些URL的優(yōu)化,。

語法:

public function _empty($name){

}

1)  錯(cuò)誤頁面的定制

訪問時(shí):

2)  優(yōu)化url

訪問:

我們?cè)L問時(shí),,由于沒有shanghai方法,,所以會(huì)自動(dòng)定位到_empty方法中,,并將shanghai做為參數(shù)傳遞給$name

5,、 空模塊

空模塊的概念是指當(dāng)系統(tǒng)找不到指定的模塊名稱的時(shí)候,,系統(tǒng)會(huì)嘗試定位空模塊(EmptyAction),利用這個(gè)機(jī)制我們可以用來定制錯(cuò)誤頁面和進(jìn)行URL的優(yōu)化,。

語法:

class EmptyAction extends Action{

}

MODULE_NAME:請(qǐng)求的當(dāng)前模塊名稱

1)  錯(cuò)誤頁面的訂制

運(yùn)行:

系統(tǒng)找不到abc控制器,,所以會(huì)自動(dòng)定位到EmptyAction中。

2)  優(yōu)化url

運(yùn)行:

6,、 項(xiàng)目分組

一般網(wǎng)站項(xiàng)目是由若干個(gè)小項(xiàng)目構(gòu)成的,,如:前臺(tái)、后臺(tái),、會(huì)員,、博客等

配置文件config.php中有兩個(gè)選項(xiàng),用于配置項(xiàng)目的分組

l APP_GROUP_LIST      :分組列表

l DEFAULT_GROUP       :默認(rèn)組名    

1)  修改配置文件

2)  創(chuàng)建分組控制器目錄

3)  運(yùn)行

4)  對(duì)模板進(jìn)行分組

7,、 url大小寫

TP中的url嚴(yán)格區(qū)分大小寫,,如果想不區(qū)分大小寫,可以修改以下選項(xiàng):

配置文件:config.php

l 'URL_CASE_INSENSITIVE=>true

運(yùn)行:

8,、 頁面跳轉(zhuǎn)

在需要對(duì)用戶的操作信息進(jìn)行提示時(shí),,可以使用以下兩個(gè)方法:

l success :操作成功時(shí)所調(diào)用的方法

l error            :操作失敗時(shí)所調(diào)用的方法

配置文件:config.php

l TMPL_ACTION_SUCCESS success方法對(duì)應(yīng)的模板

l TMPL_ACTION_ERROR      error方法對(duì)應(yīng)的模板

代碼:

運(yùn)行:

配置文件中:

可以修改以上選項(xiàng),實(shí)現(xiàn)自定義模板

9,、 頁面重定向

如果想實(shí)現(xiàn)頁面的重定向,,可以使用以下方法:

redirect

語法:

$this->redirect(news/show, array('id=>2),      5,   “頁面跳轉(zhuǎn)中”     );

參數(shù)1:跳轉(zhuǎn)地址

參數(shù)2:參數(shù)數(shù)組

參數(shù)3:停留時(shí)間

參數(shù)4:提示信息

三,、視圖

1、 什么是視圖

用戶看到的并與之交互的界面

tp中,,視圖主要包含兩部份:

1)  視圖類

2)  模板

2,、 模板定義

默認(rèn)的模板文件定義規(guī)則:

模板目錄/[分組名/]模塊名/操作名+模板后綴

TMPL_TEMPLATE_SUFFIX :模板后綴名

3、 分隔符

l 'TMPL_L_DELIM'=>'<{',               :模板左分界符  默認(rèn):{

l 'TMPL_R_DELIM'=>'}>',              :模板右分界符     默認(rèn):}

4,、 模板賦值與輸出

模板賦值:

$this->assign('模板變量名’,’’);

模板輸出:

$this->display('模板名’);

5,、 模板字符串替換

tp的模板中,默認(rèn)有一些字符串表示一些路徑

l __PUBLIC__:當(dāng)前網(wǎng)站的公共目錄

l __APP__當(dāng)前項(xiàng)目的URL地址

l __GROUP__:當(dāng)前分組的URL地址

l __URL__ 當(dāng)前模塊的URL地址

l __ACTION__:當(dāng)前操作的URL地址

l TMPL_PARSE_STRING :可以在配置文件中配置此選項(xiàng),,用于一些常用路徑的定義

模板文件:

運(yùn)行:

配置文件:

模板文件:

6,、 獲取內(nèi)容

l $this->fetch();

fetch         :獲取內(nèi)容,返回字符串

display      :輸出字符串

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多