打開Myapp/Lib/Action/IndexAction " /> 欧美国产影院,亚洲精品AV无码喷奶水糖心,男男免费看

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

淺析ThinkPHP的模板輸出功能

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 打開瀏覽器輸入地址:<http://127.0.0.1/>,我們可以看到,定義的模板變量已經輸出來了。

附加補充知識:

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 name="array" id="vo">{$vo}<br /></iterate></body></html>

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

php技術淺析ThinkPHP的模板輸出功能,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 好紧小嫩嫩水的10p 好紧好湿太硬了我太爽了小说 | 亚洲 日韩 国产 中文视频 | 嫩草影院永久在线一二三四 | 中文字幕s级优女区 | 4484在线观看视频 | 毛片免费在线 | 中国女人内谢69XXXXXA片 | 亚洲高清无在码在线电影 | 嫩草影院未满十八岁禁止入内 | 亚洲国产cao | 久久亚洲精品成人 | gayxxxxgay呻吟受日本 | 免费黄色网址在线观看 | 飘雪在线观看免费高清完整版韩国 | 影音先锋av电影 | 俄罗斯freeⅹ性欧美 | 日本红怡院亚洲红怡院最新 | 受被三个攻各种道具PLAY | 国产欧美另类久久久精品免费 | 国产GV无码A片在线观看 | 国产精品久久久久久久伊一 | 亚洲三级视频 | 亚洲午夜精品AV无码少妇 | 国产人妻精品久久久久久很牛 | 国产GV天堂亚洲国产GV刚刚碰 | 久久久久久91香蕉国产 | 99久久精品国产高清一区二区 | 人人射人人爱 | 中文字幕在线不卡精品视频99 | 久久青草免费91线频观看站街 | 黄色免费网址在线观看 | 小柔的性放荡羞辱日记 | 九色91精品国产网站 | 兽交白浆喷水高潮 | 亚洲欧美一区二区三区蜜芽 | 美女乱草鲍高清照片 | 亚洲国产在线综合018 | 日韩 国产 欧美视频二区 | 鬼灭之刃花街篇免费樱花动漫 | 精品无码国产AV一区二区三区 | 国产九九九九九九九A片 |