菜单

MVC的模版标签系统_php底蕴_脚本之家澳门太阳集团

2020年1月15日 - 新闻中心

页面布局

在这里个单元中大家将见到什么行使模板标签系统组织一个正规的模板页面。这么些例子我们运用了多少个回顾的HTML页面结构,请看下图:

以此页面有三个规范单元组成,仿佛页面设计者和开采者熟稔的那样.这些页面包车型地铁主心骨由3个包涵的单元构成:页眉,页内容主导和页脚.大家以往就看看那个单元而且了然哪些运用模板标签系统来达成.

页主体

上面包车型大巴代码单元展现的是入眼:The Page Body Layout 1

MVC的模版标签系统_php底蕴_脚本之家澳门太阳集团。2

3

4

5

1:页注脚第叁个风趣的条目是页最上部的页注明.大家在页面开头注明了那些变量,因而这几个变量将能在底下的页面和像页眉那样的带有页所使用.2:页标题下一步我们选择表明式来先导化页面标题.那些值能够从结构文件中view-resources成分利用ViewResourcesConfig->getAppTitle来博取:3:页眉
页眉是下一个相映生辉的条约.在这里间大家使用带有指令来插入页眉模板文件到页主体中.大家将要下一个子单元中来看一看页眉.
大家唯有使用了页面一向去读取页眉,无论页的机件存款和储蓄在哪里.那是二个好时机来介绍模板标签系统的目录设置.私下认可情形下,模板目录布局如下所示:The
Default PhpMVC_Tags Template Directory Layout Paths The Template Files
‘./WEB-INF/tpl’ The Compiled Template Files ‘./WEB-INF/tpl_C’
假诺要求的话大家得以在配备文件的view-resources结点来再一次定义他们,仿佛这么:4:页内容珍视那是其它叁个饱含指令被用来插入模板文件到主旨中.注意包涵的文件坐落于模板目录的sales子目录中:”./WEB-INF/tpl/sale/pageContent.ssp”5:页脚
又是二个包括指令,犹如页眉相仿.

页眉单元

在这里个事例中页眉模板文件只是三个轻易易行的单元,就疑似这么:
当主体页面被编写翻译的时候,页眉的表达式被转变到上面那样: getAppTitle(卡塔尔(قطر‎;
?>
被编写翻译的页面被寄放在编写翻译模板目录中,就疑似上边所说的,暗许的编写翻译模板目录是:’./WEB-INF/tpl_C’

页内容重点单元

页内容主导模板文件有一点复杂.文件(‘sale/pageContent.ssp’卡塔尔国内容展现如下:…1getValueBean
@>getValueBean @>

2

3Clearance deals

4Todays specials

Our Staff at Your Service…5

Area Manager:

1:一些更多的扬言
在页面顶端所出示的额外注脚能让我们表明页变量以便上面能够使用.在内容被拍卖未来,这几个注解就要编写翻译后像上面那样展现:

getValueBean; ?>…

getValueBean; ?>2:使用表明式来呈现内容单元标题今后大家使用多个表达式来显示内容单元的标题.注意大家注解那么些变量是”全局”变量在主页面包车型大巴最上部.管理完后,表明式将改动那个代码,就像那样:

当页面被出示到顾客的浏览器中,内容单元的标题看起来就疑似这么:Jack’s Super
Deals for : May 二〇一〇.3:使用表明式来突显一些数额条款未来大家能显得一些事实上的数据.在此个页内容主导单元中我们拜谒一些在PhpMVCTabAction类的ActionObject中的产物条目款项数据.三个简化版的PhpMVCTabAction类在底下呈现:class
PhpMVCTabAction extends Action { … function execute($mapping, $form,
&$request, &$responseState of Qatar { // Our value bean container $valueBeans =& new
ValueBeans(卡塔尔(قطر‎;

// Define some strings we need on our View template page // These could
be defined globally in the phpmvc-config.xml file. // See:
ExtendedController example. $appTitle = “Flash Jack’s Include Page”;
$saleMonth = “May 2010”; $saleTitle = “Flash Jack’s Super Sale”;
$dealHeading = “Jack’s Super Deals for :”; …

// Save the string variables to our Value object
$valueBeans->addValueBean(‘APP_TITLE’ , $appTitle);
$valueBeans->addValueBean(‘SALE_MONTH’ , $saleMonth);
$valueBeans->addValueBean(‘SALE_TITLE’ , $saleTitle);
$valueBeans->addValueBean(‘DEAL_HEADING’ , $dealHeading); …

// Some float values we could receive from a database query // Note: The
prices are formatted in the Products class constructor. // Eg: “$
n,nnn.nn” $price1 = 125.00; …

// Setup some clearance deals (individual object instances): // Note:
The Product class file was included in our local prepend.php file $item1
= new Product(‘Super Duper’, $price1); … $valueBeans->addValueBean;

// Todays specials (array of object instances) $products = array();
$products[] = new Product(‘Gooses Bridle’, $price3); …
$valueBeans->addValueBean(‘PRODUCTS_ARRAY’, $products);

// Our staff $staff1 =& new Staff(‘Bruce’, ‘Sales’, ‘Karate’); …
$valueBeans->addValueBean; …

// Save the Value object $this->saveValueObject($request,
$valueBeans卡塔尔;
在上边的代码中,我们能看出$item1被创建并被保留成ActionObject的valueBeans条款.Bean数据条款今后能在模板页面中被再次拿到:getValueBean
@> 大家得以像下边这样彰显条指标值:…4:展现数组
大家也能够向来运用部分PHP代码在大家的模板页上.在这里个抽离的MVC形式中,大家应有仅在那编写代码去决定那个经过ActionObject和ViewResourcesConfig实例提供的数据.在地点的也内容单元(‘sale/pageContent.ssp’卡塔尔(قطر‎中,我们接收叁个PHP的foreach语法来循环读取$products数组.大家能在上头的PhpMVCTabAction类中看看$products数组被创制并被保留在ActionObject中,就和方面包车型大巴$item1
Bean雷同.在foreach循环中我们能采纳说明式来显示产物数量:

5:突显ViewResourcesConfig属性
最终我们从view-resources成分所定义的ViewResourcesConfig属性来显示”Area
Manager”在我们的从头到尾的经过页:

唯独注意在那些事例中大家使用了一个后续ViewResourcesConfig类的指标(MyViewResourcesConfigState of Qatar来安装有些自定义的属性.大家定义了四个扩展ViewResourcesConfig类的对象,在配备文件里应用className=”MyViewResourcesConfig”属性,而且MyViewResourcesConfig类定义在文书”MyViewResourcesConfig.php”中.MyViewResourcesConfig类(classes/MyViewResourcesConfig.phpState of Qatar达成了setter/getter方法去管理自定义属性,这本个性我们在view-resources结点中定义:class
MyViewResourcesConfig extends ViewResourcesConfig {

// —– Properties
—————————————————– //

var $areaManager = ”;

function getAreaManager() { return $this->areaManager; }

function setAreaManager { $this->areaManager = $areaManager; }
我们今日能应用表明式在大家的页面上贯彻”Area Manager”了:
注意:在真实的应用程序中数量能从关系型数据库中获得.

页脚单元

页脚单元和地点商量过的页眉单元的拍卖相肖似.页内衣模特板文件好似这么:
当主体页面被编写翻译,在页脚中的表明式被转变到下边那样: getCopyright(卡塔尔(قطر‎; ?>
编写翻译的页眉页面被储存在编写翻译模板目录.暗许的编译模板目录是:’./WEB-INF/tpl_C’

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图