php的模板库Smarty教程-1

简介:
首先是下载smarty库到你的电脑上,地址
 
下载后把libs里的东西拷贝到你的站点目录下,我这里是站点根目录/smarty文件夹。
 
这里和它同级的目录/php是我们的学习目录。
 
其他结构 /php/tmps放模板,/php/tmps_c放编译文件。
 
准备工作完成,
模板文件美工做好的页面,我们做下修改,按照通常习惯把html后缀改成tpl当然不改也没关系。
 
根据站点结构分成头部,主体和底部三部分。
 
头部header.tpl:
 
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" > 
< html  xmlns ="http://www.w3.org/1999/xhtml" > 
< head > 
< meta  http-equiv ="Content-Type"  content ="text/html; charset=gbk"  /> 
< title >Smarty学习 </title> 
</head> 
< body >
 
底部footer.tpl:
 
</body> 
</html>
 
 
主体显示在body里的东西index.tpl:
 
{* 在Smarty里注释是用*星号 *} 
{include file="header.tpl"}{*包含头部*} 
你好, < span  style ="color:#900;" >{$name} </span>, 欢迎迈入Smarty学习殿堂。 
{include file="footer.tpl"}{*包含底部*}
 
除了那一堆由{和}定界符包含以外,其他我们发现和普通的html文件没什么区别。
 
大家知道php文件的定界符通常是<?php和?>,php解释器就是靠这些定界符知道,文件中哪些是php代码,哪些是正常的html代码,这样php代码会被解释执行,而html直接被输出给最终的浏览器使用。
那么smarty的代码和html代码混在一起,自然也要加以区分,于是这就是定界符的用处。
 
默认是{},当然可以修改。
 
然后php代码中注释怎么办呢,我们知道有//和/* */等。
这样
<?php //我是注释 ?>或者<?php /*我是php的注释*/ ?>
 
那么smarty的注释这样{ *我是smarty的注释* },对用星号。
 
 
看看调用文件/php/smarty1.php如何调用这些模板的吧。
 
<?php 
include_once( "../smarty/Smarty.class.php"); //包含smarty文件 
$smarty= new Smarty(); 
$smarty->template_dir= "../php/tmps"
$smarty->compile_dir= "../php/tmps_c"
 
$smarty->assign( "name", "张三"); 
 
$smarty->display( "index.tpl");    
?>
 
首先引入smarty类,注意你的文档结构,我这里smarty1.php文件和smarty文件夹不在同一层次用的../  ,然后的使用和普通的类一样,注意,需要指定你的模板文件夹位置和编译文件输出目录。
接着为变量$name赋值,就是,index.tpl里{$name}中的$name.
 最后显示。
 
 
 
修改定界符:
 
<?php 
include_once( "../smarty/Smarty.class.php"); //包含smarty文件 
$smarty= new Smarty(); 
$smarty->template_dir= "../php/tmps"
$smarty->compile_dir= "../php/tmps_c"
 
$smarty->left_delimiter= "<{"; //左定界符 
$smarty->right_delimiter= "}>"; //右定界符 
$smarty->assign( "name", "张三"); 
 
$smarty->display( "index.tpl");    
?>
 
 
修改模板:
 
< {* 在Smarty里注释是用*星号 *} > 
< {include  file ="header.tpl"} > < {*包含头部*} > 
你好, < span  style ="color:#900;" > < {$name} > </span>, 欢迎迈入Smarty学习殿堂。 
< {include  file ="footer.tpl"} > < {*包含底部*} >
 







本文转自 xcf007 51CTO博客,原文链接:http://blog.51cto.com/xcf007/111041,如需转载请自行联系原作者

相关文章
|
11天前
|
XML 安全 PHP
PHP与SOAP Web服务开发:基础与进阶教程
本文介绍了PHP与SOAP Web服务的基础和进阶知识,涵盖SOAP的基本概念、PHP中的SoapServer和SoapClient类的使用方法,以及服务端和客户端的开发示例。此外,还探讨了安全性、性能优化等高级主题,帮助开发者掌握更高效的Web服务开发技巧。
|
1月前
|
tengine 应用服务中间件 Linux
Tengine、Nginx安装PHP命令教程
要在阿里云Linux上安装PHP,请先更新YUM源并启用PHP 8.0仓库,然后安装PHP及相关扩展。通过`php -v`命令验证安装成功后,需修改Nginx配置文件以支持PHP,并重启服务。最后,创建`phpinfo.php`文件测试安装是否成功。对于CentOS系统,还需安装EPEL源和Remi仓库,其余步骤类似。完成上述操作后,可通过浏览器访问`http://IP地址/phpinfo.php`测试安装结果。
|
1月前
|
应用服务中间件 Shell PHP
pbootcms模板报错提示PHP Warning: Unknown: open_basedir restriction
pbootcms模板报错提示PHP Warning: Unknown: open_basedir restriction
|
2月前
|
PHP Windows
thinkPhP6.0安装教程图解--PHP框架安装
本文是一篇关于ThinkPHP 6.0安装教程的图解,包括环境检查、安装Composer、修改Composer镜像地址、安装ThinkPHP框架以及启动运行ThinkPHP的步骤。文章详细描述了每个步骤的操作方法,并提供了相应的命令和截图,帮助用户理解并顺利完成ThinkPHP 6.0的安装和运行。
thinkPhP6.0安装教程图解--PHP框架安装
|
1月前
|
Shell 网络安全 数据安全/隐私保护
suuk-s.php.jpg-python 库劫持
suuk-s.php.jpg-python 库劫持
26 0
|
2月前
|
设计模式 存储 算法
PHP中的设计模式:策略模式的深入解析与应用在软件开发的浩瀚海洋中,PHP以其独特的魅力和强大的功能吸引了无数开发者。作为一门历史悠久且广泛应用的编程语言,PHP不仅拥有丰富的内置函数和扩展库,还支持面向对象编程(OOP),为开发者提供了灵活而强大的工具集。在PHP的众多特性中,设计模式的应用尤为引人注目,它们如同精雕细琢的宝石,镶嵌在代码的肌理之中,让程序更加优雅、高效且易于维护。今天,我们就来深入探讨PHP中使用频率颇高的一种设计模式——策略模式。
本文旨在深入探讨PHP中的策略模式,从定义到实现,再到应用场景,全面剖析其在PHP编程中的应用价值。策略模式作为一种行为型设计模式,允许在运行时根据不同情况选择不同的算法或行为,极大地提高了代码的灵活性和可维护性。通过实例分析,本文将展示如何在PHP项目中有效利用策略模式来解决实际问题,并提升代码质量。
|
3月前
|
Linux PHP
Linux CentOS 宝塔 Suhosin禁用php5.6版本eval函数详细图文教程
【8月更文挑战第27天】本文介绍两种禁用PHP执行的方法:使用`PHP_diseval_extension`禁用和通过`suhosin`禁用。由于`suhosin`不支持PHP8,仅适用于PHP7及以下版本,若服务器安装了PHP5.6,则需对应安装`suhosin-0.9.38`版本。文章提供了详细的安装步骤,并强调了宝塔环境下与普通环境下的PHP路径差异。安装完成后,在`php.ini`中添加`suhosin.so`扩展并设置`executor.disable_eval = on`以禁用执行功能。最后通过测试代码验证是否成功禁用,并重启`php-fpm`服务生效。
43 2
|
3月前
|
SQL 关系型数据库 MySQL
PHP与MySQL交互之基础教程
【8月更文挑战第31天】 在数字世界中,数据是推动一切的核心力量。本文将引导你探索PHP与MySQL的协同工作,通过实际代码示例,展示如何建立连接、执行查询以及处理结果集。无论你是初学者还是希望巩固知识的开发者,这篇文章都将为你提供宝贵的实践知识。
|
3月前
|
网络协议 API PHP
PhalApi:在宝塔一键安装部署PHP开源接口框架的教程
要在宝塔面板上一键安装部署PhalApi开源接口框架,首先进入宝塔软件商店,切换到“一键部署”选项,搜索“phalapi”并点击“一键部署”。安装时需填写接口域名、数据库名及密码,提交后等待安装完成。安装成功后可在宝塔面板中查看新站点和源代码目录,并通过DNS解析设置访问接口域名,如`http://myapi.phalapi.net/`。默认开启的调试模式便于测试,可通过修改`config/sys.php`中的`debug`值为`false`关闭。最后,在源代码中开发自己的PHP接口,PhalApi会自动生成在线接口文档,方便后续调用与维护。更多详细教程可参考官方文档。
|
4月前
|
小程序 PHP
全新UI自助图文打印系统小程序源码 PHP后端 附教程
全新UI自助图文打印系统小程序源码 PHP后端 附教程
273 2