亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

淺析ThinkPHP的模板輸出功能

2024-05-04 23:24:19
字體:
來源:轉載
供稿:網友

ThinkPHP中的每一個xxxAction.class.php文件就代表著一個應用模塊,這個Action中的每一個方法(function)代表著一個操作,操作可以分為有輸出到模板的操作和只具執行不需要輸出的操作。
打開Myapp/Lib/Action/IndexAction.class.php文件,我們可以看到里面的基礎代碼:

class IndexAction extends Action{public function index(){}}

對此,需要指出一下幾點:

1.在ThinkPHP的開發中,要增加一個應用模塊,就要在Action文件夾里建立一個類,類的文件命名格式是“模塊名稱+Action.class.php”。例如我們這里的應用模塊是Index,所以定義文件名為IndexAction.class.php。
2.應用模塊類的定義要繼承框架的Action類。要為這個應用模塊添加一個操作,則定義一個以此操作為命名的function.例如上面的index操作。

通常一個應用模塊中,會有若干操作(function)需要有與用戶交互的頁面,這就需要用到模板輸出,ThinkPHP本身已內置了一套具有ThinkPHP特色的,很強大易擴展但應用非常方便兼簡單的模板引擎。
在應有模塊中,如果某個操作是需要頁面顯示的,只要對應在Myapp/Tpl/default/里建立一個文件夾,文件夾以應用模塊的名稱來命名,然后在這個文件夾下,建立一個以這個function名稱來命名的html文件,就可以在這個方法中使用$this->display()方法來直接調用該模板。(當然也可以調用其它模塊下的其它模板或顯式指定模板文件位置和名稱,由于是循序漸進式的學習,就讓我們先忽略吧)了解這些理論后,我們先簡單實操一下這些知識。
(1)在Myapp/Tpl/default/下建立一個文件夾,根據應用模塊的名稱,我們將這個文件夾命名為Index
(2)在Myapp/Tpl/default/Index/下建立一個html文件,根據操作名稱,我們命名該文件為index.html
(3)打開Myapp/Lib/Action/IndexAction.class.php文件,修改代碼為

<?phpclass IndexAction extends Action{public function index(){$value = 'hello,ThinkPHP';$this->assign('name',$value);$this->display();}}?>

(摘自手冊:ThinkPHP模板指南,此后的知識要點均來自ThinkPHP官方手冊,不再申明)
在Action類里面使用 assign方法對模板變量賦值,無論何種變量類型都統一使用assign賦值。

$this->assign('name',$value);

// 下面的寫法是等效的

$this->name = $value ;

// 模板變量賦值后就需要調用模板文件來輸出相關的變量,模板調用通過display方法來實現

$this->display();


4 打開Myapp/Tpl/default/Index/index.html文件,代碼為

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><title>{$name}</title></head><body>測試輸出: {$name}</body></html>

此處注意:模板變量使用{$變量名稱}這種標簽進行輸出。

不同的模板變量類型,使用不同的標簽,標簽可以自行另外定義,暫且不理會。

5 打開瀏覽器輸入地址:<>,我們可以看到,定義的模板變量已經輸出來了。

附加補充知識:

1 如果要同時輸出多個模板變量,可以使用下面的方式:

$array = array();$array['name'] = 'thinkphp';$array['email'] = '123456@vip.qq.com';$array['phone'] = '123456';$this->assign($array);

這樣,就可以在模板文件中同時輸出name、email和phone三個變量。

2 我們使用上面的變量定義,將整個數組定義為一個模板變量來輸出

$array = array();$array['name'] = 'thinkphp';$array['email'] = '123456@vip.qq.com';$array['phone'] = '123456';$this->assign('array',$array);$this->display();

在html中,要輸出$array['name']的值,代碼是
{$array.name} 或 {$array['name']}

3 將這個數組循環輸出

(1) IndexAction.class.php中代碼更改如下

<?phpclass IndexAction extends Action{public function index(){$array = array();$array['name'] = 'thinkphp';$array['email'] = '123456@vip.qq.com;$array['phone'] = '123456';$value = 'hello,ThinkPHP';$this->assign('array',$array);$this->assign('name',$value);$this->display();}}?>

(2) 將Myapp/Tpl/default/Index/index.html代碼更改如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><title>{$name}</title></head><body><iterate>{$vo}<br /></iterate></body></html>

注意:name='array'是指要循環的模板變量是array,id='vo'是指這個數據在模板輸出時所使用的名稱

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久99热这里只有精品国产| 欧美午夜精品久久久久久人妖| 亚洲国产精品va在线看黑人| 国产91在线高潮白浆在线观看| 超碰精品一区二区三区乱码| 日本国产精品视频| 色偷偷88888欧美精品久久久| 亚洲精品视频二区| 亚洲精品国产suv| 成人福利网站在线观看| 成人免费黄色网| 亚洲自拍在线观看| 97国产精品视频人人做人人爱| 久久久av网站| 欧美中文字幕精品| 清纯唯美日韩制服另类| 在线性视频日韩欧美| 欧美成年人视频| 欧美疯狂做受xxxx高潮| 日韩精品在线免费观看视频| www国产91| 日本不卡免费高清视频| 中文在线不卡视频| 欧美有码在线观看| 欧美xxxx做受欧美.88| 欧美性感美女h网站在线观看免费| 久久99热这里只有精品国产| 国产精品高清在线观看| 久久国产精品久久精品| 亚洲精品日韩在线| 伊人激情综合网| 欧美激情一区二区三区成人| 欧美自拍视频在线观看| 国产成人高清激情视频在线观看| 久久99亚洲热视| 欧美做受高潮1| 91日韩在线播放| 日韩欧美精品在线观看| 亚洲国产成人精品女人久久久| 亚洲国产欧美一区二区三区同亚洲| 亚洲一区二区三区视频| 欧美高清在线观看| 久久亚洲私人国产精品va| 国产成人亚洲综合青青| 亚洲国产精品久久91精品| 亚洲综合国产精品| 在线亚洲男人天堂| 91精品国产综合久久香蕉的用户体验| 精品人伦一区二区三区蜜桃免费| 一区二区三区视频在线| 久久精品99久久久香蕉| 96国产粉嫩美女| 自拍视频国产精品| 成人中心免费视频| 精品爽片免费看久久| 欧美在线影院在线视频| 亚洲欧洲在线播放| 欧美猛男性生活免费| 国产精品电影久久久久电影网| 亚洲精品久久7777777| 亚洲最大的成人网| 91美女福利视频高清| 91成人天堂久久成人| 精品亚洲aⅴ在线观看| 亚洲第一网中文字幕| 亚洲国产91精品在线观看| 在线精品国产欧美| 最好看的2019年中文视频| 国产成人精品国内自产拍免费看| 久久夜色精品国产欧美乱| 成人免费观看网址| 久久99久国产精品黄毛片入口| 国产精品视频一区国模私拍| 国产精品久久久久久久久久新婚| 亚洲国产精品久久久久| 色yeye香蕉凹凸一区二区av| 91精品国产色综合久久不卡98口| 亚洲第一黄色网| 国产福利成人在线| 7m第一福利500精品视频| 成人黄色av免费在线观看| 日韩精品中文字幕久久臀| 黑人极品videos精品欧美裸| 亚洲一区www| 亚洲永久在线观看| 91精品国产91久久久久久最新| 久久免费视频观看| 欧美黄色成人网| 国产在线拍揄自揄视频不卡99| 国产美女精品视频免费观看| 欧美xxxx18性欧美| 久久精品99无色码中文字幕| 亚洲精品福利视频| 97久久久久久| 欧美中文字幕视频| 日韩av免费在线看| 国产精品中文久久久久久久| 国产偷亚洲偷欧美偷精品| 97视频免费看| 欧美成在线观看| 欧美色videos| 国产精品久久久久久亚洲影视| 国产精品网红直播| 69av在线视频| 亚洲人成自拍网站| 久久久久久久久久久网站| 国产精品专区第二| 亚洲欧美另类中文字幕| 日韩资源在线观看| 国产精品免费久久久| 日韩精品极品视频免费观看| 欧美中文字幕在线视频| 欧美福利视频网站| 日韩欧美在线播放| 国产aⅴ夜夜欢一区二区三区| 国内外成人免费激情在线视频网站| 日本免费一区二区三区视频观看| 久久精品亚洲国产| 国产成人精品一区| 91爱爱小视频k| 久久久视频免费观看| 亚洲精品一区二区三区婷婷月| 精品激情国产视频| 欧美亚洲日本黄色| 亚洲一区二区免费在线| 日韩欧美一区二区在线| 亚洲成人网av| 97人洗澡人人免费公开视频碰碰碰| 日韩欧美极品在线观看| 国产精品视频导航| 欧美精品videossex性护士| 日韩电影中文字幕av| 成人精品一区二区三区电影免费| 最近2019中文字幕mv免费看| 最近的2019中文字幕免费一页| 欧美精品在线观看| 日本久久久久久久| 日本精品视频在线观看| 欧美色视频日本版| 高清欧美电影在线| 岛国视频午夜一区免费在线观看| 久久久久一本一区二区青青蜜月| 国产精品久久久久久久久久新婚| 亚洲欧洲免费视频| 亚洲天堂色网站| 国产精品入口免费视| 国产成人在线一区二区| 中文字幕亚洲专区| 国产欧美久久一区二区| 中文字幕日韩视频| 国内免费精品永久在线视频| 国产精品av电影| 国产一区二区三区视频| 在线观看精品国产视频| 国产原创欧美精品| 动漫精品一区二区| 日韩成人激情影院| 亚洲跨种族黑人xxx| 亚洲一区二区三区在线免费观看| 国产99久久精品一区二区永久免费| 自拍偷拍亚洲精品| 午夜精品在线视频| 91av免费观看91av精品在线| 国内免费精品永久在线视频|