如何用PHP实现一个链表结构.docx
- 文档编号:29235974
- 上传时间:2023-07-21
- 格式:DOCX
- 页数:12
- 大小:19.21KB
如何用PHP实现一个链表结构.docx
《如何用PHP实现一个链表结构.docx》由会员分享,可在线阅读,更多相关《如何用PHP实现一个链表结构.docx(12页珍藏版)》请在冰豆网上搜索。
如何用PHP实现一个链表结构
如何用PHP实现一个链表结构
最近慢慢开始复习数据结构这一块,那么这里用PHP也写一个链表结构吧。
PHP本身是弱类型的语言,数据类型的约束会不够严格。
虽然下面的代码能够实现链表的基本功能,但也许会存在
在ECMall模板中,用"{"开头,以"}"结尾就构成一个标签单元,"{"紧接着的单词就是标签名。
在标签单元中单词前含"$"(美元符)的为变量名。
资源引用
res标签
∙功能:
返回当前模板当前风格目录的url路径
∙实例:
{resfile=css/ecmall.css}这个标签在模板编译后将变成http:
//商城域名/themes/default/styles/default,注意末尾没有"/",返回结果会随后台设置的主题变化
lib标签
∙功能:
返回javascript库的url路径
∙实例:
{libfile=ecmall.js}这个标签在模板编译后将变成http:
//商城域名/includes/libraries/javascript,注意末尾没有"/",返回结果不会随后台设置的主题变化
url标签
∙功能:
url解析器,可根据后台伪静态状态返回相应url等。
∙说明:
如果一个链接的目标页面需要伪静态功能,请使用该url标签,只有当后台开启伪静态并在.htaccess文件为目标页面设置了伪静态规则时url标签才能解析为静态url地址。
∙实例:
{urlapp=goods&id=$goods_id}解析后如果伪静态成功则返回"goods/19"
include标签:
include标签用于在当前模板中包含其它模板。
当前模板中的变量在被包含的模板中可用。
必须指定file属性,该属性指明模板资源的位置。
实例:
{includefile="header.html"}
{*bodyoftemplategoeshere*}
{includefile="footer.html"}
模板变量
1.模板保留变量
模板预置的一些系统变量,包括
∙$smarty.now当前时刻对应的格林尼治时间戳,可以用{$smarty.now|date}显示当前日期时间,关于date变量调节器请看下文讲解。
∙$smarty.get$smarty.post$smarty.cookie$smarty.env$smarty.server$smarty.request$smarty.session同php的$_GET、$_POST、$_COOKIE、$_ENV、$_SEVER、$_REQUEST、$_SESSION变量。
非程序人员如果需要了解请参考php相关手册了解。
2.自定义变量
从php赋值变量。
例如在调用该模板的app程序文件中进行赋值
//在app/default.app.php文件的index方法中$this->display前添加赋值语句
$this->assign('name','Tom');//普通变量
$this->assign('user',array(
'name'=>'Tom',
'age'=>'28'
));//数组变量
$this->display('index.html');
在themes/mall/default/index.html中显示变量
Hello,{$name},yourageare{$user.age}!
在模板中赋值变量。
assign标签,例在themes/mall/default/index.html中赋值变量
{assignvar="name"value="Tom"}
Hello,{$firstname}!
3.模板上使用语言项
说明:
为了满足多语言需求,ECMall采用了语言包机制,除挂件外,在模板、js文件中均使用语言项代替直接显示语言文字。
语言文件:
语言文件位于商城根目录下的languages目录下,为当前语言建了一个目录,如果您用的是sc-gbk版本,则会有sc-gbk目录,进去之后就能看到属于前台控制器的全部语言文件了。
除common.lang.php属于所有app外,每一个语言文件都只属于一个app(ECMall中称为控制器)。
语言文件属于某个控制器而不属于某个模板,同一个模板如果被不同控制器调用将使用不同语言文件进行语言解析。
在默认控制器对应的语言文件default.lang.php添加语言项"test":
php
returnarray(
'hot_search'=>'热门搜索',
......
'best_recommended'=>'精品推荐',
'test'=>'测试语言项'
);
?
>
在index.html模板中显示语言项"test"
{$lang.test}
模板中还支持数组形式语言项,在默认控制器对应的语言文件default.lang.php添加语言项"test_array"
php
returnarray(
'hot_search'=>'热门搜索',
......
'best_recommended'=>'精品推荐',
'test_array'=>array(
'key1'=>'测试数组语言项',
'key2'=>'太好了'
),
);
?
>
在index.html模板中显示语言项"test"
{$lang.test_array.key1}
4.变量调节器
*escape
功能:
提供各种编码功能。
参数:
可选参数html、url、quotes、input、editor,缺省为htmlhtml:
分别替换变量中的如下字符&<>"为其html实体代码,用于按原样输出html源代码。
∙url:
如果该变量用于储存url地址,需要进行url编码
∙quotes:
在单双引号字符前添加反斜杠
∙input:
给输入框赋值时使用
∙editor:
当显示通过文本编辑器录入的内容,需要用此参数
例如php赋值:
$this->assign('goods_name',"L'oreal/欧莱雅".'"'."清润全日保湿乳霜".'"'."50ml
copyright@ 2008-2022 冰点文档网站版权所有
经营许可证编号:鄂ICP备2022015515号-1