Yii框架檢視、檢視佈局、檢視資料塊操作示例
阿新 • • 發佈:2020-11-19
本文例項講述了Yii框架檢視、檢視佈局、檢視資料塊操作。分享給大家供大家參考,具體如下:
Yii 檢視
控制器方法程式碼:
public function actionIndex(){ $data = array( 'name' => 'zhangsan', 'age' => 12, 'address' => array('北京市','朝陽區'), 'intro' => '我是簡介,<script>alert("123");</script>' ); return $this->renderPartial('index',$data);//第二個引數賦值 }
檢視程式碼:
<?php use yii\helpers\Html; use yii\helpers\HtmlPurifier; ?> <h1>Hello index view</h1> <h2>姓名:<?php echo $name;?></h2> <h2>年齡:<?=$age?></h2> <h2>地址:<?=$address[0]?> <?=$address[1]?></h2> <h2>簡介:<?=Html::encode($intro)?> </h2> <h2>簡介:<?=HtmlPurifier::process($intro)?> </h2>
Yii 檢視佈局
控制器程式碼:
//設定的佈局檔案 public $layout = 'common'; public function actionAbout(){ $data = array('page_name'=>'About'); //render方法會把檢視檔案common的內容放到$content當中,並顯示佈局檔案。 return $this->render('about',$data); }
公共檢視common程式碼:
<!DOCTYPE html> <html> <head> <title></title> <meta charset="UTF-8"> </head> <body> <h1>這是Common內容</h1> <div> <?=$content?> </div> </body> </html>
檢視about程式碼,並呼叫了activity檢視:
<h1> Hello <?=$page_name?></h1> <?php echo $this->render('activity',array('page_name'=>'activity'));?>
檢視activity程式碼:
<h1> Hello <?=$page_name?></h1>
結論:檢視引用了公共佈局檔案,並且在一個檢視中呼叫另一個檢視檔案。
Yii 檢視資料塊
控制器程式碼:
public $layout = 'common'; public function actionStudent(){ $data = array('page_name'=>'Student'); return $this->render('student',$data); } public function actionTeacher(){ $data = array('page_name'=>'Teacher'); return $this->render('teacher',$data); }
公共佈局檔案common程式碼:
<!DOCTYPE html> <html> <head> <title> <?php if(isset($this->blocks['webTitle'])):?> <?=$this->blocks['webTitle'];?> <?php else:?> commom <?php endif;?> </title> <meta charset="UTF-8"> </head> <body> <h1>這是Common內容</h1> <div> <?=$content?> </div> </body> </html>
檢視student程式碼:
<?php $this->beginBlock('webTitle');?> <?=$page_name?>頁面 <?php $this->endBlock();?> <h1> Hello <?=$page_name?></h1>
檢視teacher程式碼:
<h1> Hello <?=$page_name?></h1> <?php $this->beginBlock('webTitle');?> <?=$page_name?>頁面 <?php $this->endBlock();?>
總結:如果需要在檢視中改變公共模板中的內容,需要使用block方法,例如上面例子中改變了common頁面的title。
更多關於Yii相關內容感興趣的讀者可檢視本站專題:《Yii框架入門及常用技巧總結》、《php優秀開發框架總結》、《smarty模板入門基礎教程》、《php面向物件程式設計入門教程》、《php字串(string)用法總結》、《php+mysql資料庫操作入門教程》及《php常見資料庫操作技巧彙總》
希望本文所述對大家基於Yii框架的PHP程式設計有所幫助。