PHP.MVCテンプレートタグシステム(3)

WBOY
リリース: 2016-06-21 09:04:45
オリジナル
930 人が閲覧しました

PHP.MVC标签语法

    在基本的介绍之后,我们现在就可以来看看模板标签系统的语法.
    在看具体的标签之前,我们应该定义什么作为我们的标签.为了写一个标签,我们使用<@ ... @>标签结点.左标签(<@)和右标签(@>)是默认的标签.如果必要的话,这些标签我们能够在phpmvc-config.xml中重新定义.
    模板标签系统现在支持以下3种标签:包含指令,声明和表达式.我们现在来看看这些指令.

包含指令

    包含指令能让我们将内容分隔为许多模块,比如:页眉,页脚或者内容.包含的页面可以是HTML,或者其他标签模板页.据个例子,下面的包含指令能用来包含一个页眉:
    <@ include 'pageHeader.ssp' @>
    一个包含指令在模板上下文种的例子:


...




  
     
  
  
   ...
  
   ...

...



    在这里例子种pageHeader.ssp页眉文件内容将被插入到主页面上当这个页面被发送到用户浏览器上.这个页眉文件包含了一个表达式:

 
    <@ =viewConfig.getAppTitle @>
 

    这个表达式将被编译并且将在运行时输出为:

 
    Flash Jacks' Sleek Tab Site
 

声明

    声明允许我们在模板种声明一个页面级别的变量,或者甚至其他包含页面.一个声明看起来像以下代码:
    <@ salesAreaID = "Central District" @>
    我们能够在模板文件中使用声明:
<@ saleMonth = data.getValueBean('SALE_MONTH') @>
<@ saleTitle = data.getValueBean('SALE_TITLE') @>
<@ dealHeading = data.getValueBean('DEAL_HEADING') @>
<@ salesAreaID = "Central District" @>



  
   <br>      ...<br>  


...


    在这里例子中,我们声明了一些页变量.前3个变量已经在我们创建的Action类中的ActionObject中被赋值:data.getValueBean('SALE_MONTH').第4个变量被赋了一个字符串值:salesAreaID = "Central District".
    声明的变量现在可以在页面中使用了:

...

<@=dealHeading @> <@=saleMonth @>


Clearance deals

   ...


Todays specials

   ...


...

    这些页变量将被输出为:

Jack's Super Deals for : May 2010


...
...

表达式

式タグを使用すると、テンプレート ページで式を実行できます。次の式は、単純な文字列 (salesAreaID) を表示するために使用され、フレームワーク構成クラスを取得することもできます。属性:
<@ =salesAreaID @>
<@ =viewConfig.contactInfo @>
これらの式を使用するには、前に宣言する必要があります:
<@ salesAreaID = "Central District" @>
または、ViewResourcesConfig オブジェクト (viewConfig) のプロパティが view-resources ノードで宣言されます:
appTitle = "Flash Jacks' Sleek Tab Site"
contactInfo = "flash.jack@jackshost.com "
...

式でオブジェクトを使用する場合、標準の PHP 表記法またはドット スタイル表記法でオブジェクト メソッド宣言を書くことができます:
PhpMVC_Tags オブジェクト メソッド表記法
PHP スタイルの販売= data->getSales
ドットスタイル sales = data.getSales
メソッドパラメータありstaff = data.getValueBean("STAFF")
データ配列の取得 products = data->getValueBean(" PRODUCTS_ARRAY")
次の単元では、テンプレート タグ システムを使用してこれらをまとめてページを作成する方法を見ていきます



関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート