麻辣堂|资源主站|开发论坛|在线手册
首页 Apache Linux Java MySQL 注册帮助 
PHP项目开发组是PHP开发资源网于2007组年建成立的项目开发团队,目前核心开发成员有27人, 项目协作成员8名.下设7个开发组,主要承接大/中型网站项目开发任务。

    由于开发任务较多,人员比较紧张,现面向社会招聘全职或者兼职开发人员,不管你是在校大学生,还是全职开发人员,以及SOHO都可以联系本站,我们可以长期合作,并为您带来丰厚的报酬。
  您现在的位置:PHP开发资源网 > 麻辣堂 > 详细资料
待解决
assetTemplate学习笔记
悬赏分:20 - 2007年08月21日


CODE:
assetTemplate学习笔记
作者:axgle

本笔记以assetTemplate1.07为准,希望对您方便的使用assetTemplate有所帮助。

目录

1.assetTemplate的效率
2.基本变量
3.逻辑运算结构
4.方法(Methods)
5.扩展
--------------------------
1.assetTemplate的效率

比SmartTemplate快,比Smarty快

2.assetTemplate的变量

其他模板引擎,例如SmartTemplate,需要内建函数assign()来赋值。
具体语法如下:
assign ( 模版中的变量, 要替换的内容 )

但assetTemplate不需要这样。可以直接按照如下格式使用:

$template->模版中的变量名 = 要替换的内容;


下面是一个例子

在php环境下运行以下程序代码:

<?php

$template = new asset('template');
$text = 'Sample Text';
$template->title=$text;
$template->flush();

?>


模版
代码:
<html>$title</html>


输出
代码:
<html> Sample Text </html>


assetTemplate的变量是由$符号表示的。里面的内容可以是String,Array,Int,或者是Long Text等等(所有php支持的)。

下面是数组的例子:
php
代码:
&lt;?php

$user = array(
'NAME' => 'John Doe',
'GROUP' => 'Admin',
'AGE' => '42',
);

$template = new asset('user');

$template->user=$user;
$template->flush();

?&gt;

模版
代码:
Name: $user[NAME]
Group: $user[GROUP]
Age: $user[AGE]

输出
代码:
Name: John Doe
Group: Admin
Age: 42


下面是另外一个例子.模板中使用foreach(),只要有东西,就一直循环显示.


代码:
&lt;?php

$links = array(
array(
'TITLE' => 'PHP',
'URL' => 'http://www.php.net/',
),
array(
'TITLE' => 'Apache',
'URL' => 'http://www.php.net/',
),
array(
'TITLE' => 'MySQL',
'URL' => 'http://www.mysql.com/',
),
);

$template = new asset('links');
$template->links=$links;
$template->flush();

?&gt;

HTML模版
代码:
<html>
<h3> Sample Links </h3>

<!--php foreach($links as $link) { -->

<a href="$link[URL]">$link[TITLE]</a>

<!--php } -->

</html>

输出:
代码:
<html>
<h3> Sample Links </h3>

<a href="http://www.php.net/"> PHP </a>

<a href="http://www.apache.org/"> Apache </a>

<a href="http://www.mysql.com/"> MySQL </a>

</html>

3、assetTemplate的逻辑控制结构

IF和"end If"
语法:

<!--php if(条件) { -->
变量已被赋值!
<!--php } -->

<!--php if ( $name=="John Doe") { --> Your name is John Doe! <!--php } -->
==判断是否相等,如果相等返回1,不相等返回0

<!--php if( $name!="John Doe") { --> Your name is not John Doe! <!--php } -->
!=判断是否不等,如果成立返回1,相等则返回0

例子:
PHP

代码:
&lt;?php

$page = new asset("if");

$page->username='John Doe';
$page->usergroup='ADMIN';
$page->picture='';

$page->flush();

?&gt;

HTML
代码:
<!--php if($username) { --> <H3> Welcome, $username </H3> <!--php }-->


<!--php if($picture)--> <img src="{$picture}"> <!--php }-->


<!--php if( $usergroup=="ADMIN" ) {-->

<a href="admin.php"> ADMIN Login </a><br>

<!--php } -->



输出代码:
<H3> Welcome, John Doe </H3>

<a href="admin.php"> ADMIN Login </a><br>


IF的子局 else
如果else子句出现在一个逻辑循环中,当if的条件不成立时则会被运行。
例子
代码:
&lt;?php

$page = new asset("else");

$page->username='John Doe';
$page->usergroup='ADMIN';
$page->picture='';

$page->flush();

?&gt;


模版

代码:
<!--php if($username) {-->

<H3> Welcome, {$username} </H3>

<!--php } -->



<!--php if($picture) { -->

<img src="{$picture}">

<!--php } else { -->

Picture not available! <br>

<!--php } -->



<!--php if($usergroup=="ADMIN") { -->

<a href="admin.php"> ADMIN Login </a><br>

<!--php } else {-->

You are in guest mode!

<!--php } -->


输出

代码:
<H3> Welcome, John Doe </H3>


Picture not available! <br>

<a href="admin.php"> ADMIN Login </a><br>


★elseif
elseif是else和if组合起来的一种结构,其意义为"除此之外如果..."
以下是一个例子
代码:
&lt;?php

$page = new asset("elseif");
$page->usergroup='INTERNAL';
$page->flush();

?&gt;

模版文件
代码:
<!--php if( $usergroup="ADMIN") { -->

<a href="admin.php"> 管理员登陆 </a><br>

<!--php } elseif($usergroup=="SUPPORT") {-->

<a href="support.php"> 帮助人员登陆</a><br>

<!--php } elseif($usergroup) {-->

<a href="other.php"> 普通方式登陆 </a><br>

<!--php } else {-->

You don't even have a usergroup!

<!--php } -->


运行php得到的输出
代码:
<a href="other.php"> 普通方式登陆 </a><br>

☆assetTemplate的方法

注:以下列出的方法并不会在模版设计中出前,他们属于assetTemplate的代码编辑部分,但是如果为了实现更深一步的模版设计,下面的内容是肯定有用的.

flush():输出结果
get_contents():获得结果的字符串表示(相当于flush但不输出而是其返回内容)


5.扩展

你可以在模板文件中使用任何已存在的php函数。例如:

模板文件
代码:

<html>
<!--php $md5=md5("md5 demp");-->
显示md5的结果:$md5

<!--php $big=strtoupper($md5);-->
大写显示:$big
</html>

可见其扩展性是无限的。


assetTemplate1.07study.zip

提问者:axgle   08-21 16:04
答复
路过。。。顺便帮顶:)
回答者:玉米づ冰冻可乐 - 瓦岗村民 8-22 09:10
我也来回答:
不管你有没有帮助我们,瓦岗寨8万村民将感谢你。。。。。

为防止灌水,您需要计算一道数学题: 答案:
11 + 83 = ? 请将计算结果填在上面

 
[]
©2007 PhpRes.COM