php中smarty实现多模版网站的方法

 更新时间:2015年06月11日 12:05:58   作者:zhuzhao  
这篇文章主要介绍了php中smarty实现多模版网站的方法,可实现smarty动态选择模板的功能,需要的朋友可以参考下

本文实例讲述了php中smarty实现多模版网站的方法。分享给大家供大家参考。具体实现方法如下:

模板model1.htm代码:

<html> 
 <head> 
  <title>模板1</title> 
 </head>  
 <body> 
 <a href="?model=1" mce_href="?model=1">模板1</a> | 
 <a href="?model=2" mce_href="?model=2">模板2</a> | 
 <a href="?model=3" mce_href="?model=3">模板3</a> 
 <p align=CENTER><font color=RED>{$title}</font></p> 
 <hr> 
 {$content} 
 </body>     
</html> 

模板model2.htm代码:

<html> 
 <head> 
  <title>模板2</title> 
 </head>  
 <body> 
 <a href="?model=1" mce_href="?model=1">模板1</a> | 
 <a href="?model=2" mce_href="?model=2">模板2</a> | 
 <a href="?model=3" mce_href="?model=3">模板3</a> 
 <p align=CENTER><font color=GREEN>{$title}</font></p> 
 <hr> 
 {$content} 
 </body>
</html> 

模板model3.htm代码:

<html> 
 <head> 
  <title>模板3</title> 
 </head>  
 <body> 
 <a href="?model=1" mce_href="?model=1">模板1</a> | 
 <a href="?model=2" mce_href="?model=2">模板2</a> | 
 <a href="?model=3" mce_href="?model=3">模板3</a> 
 <p align=CENTER><font color=BLUE>{$title}</font></p> 
 <hr> 
 {$content} 
 </body>
</html> 

php页面实现:

<?php 
require 'libs/Smarty.class.php'; //包含Smarty类库文件 
$smarty = new Smarty; //创建一个新的Smarty对象 
$title = "Test"; 
$content = "This is a test!"; 
$smarty->assign("title",$title); //对模版中的变量赋值 
$smarty->assign("content",$content); //对模版中的变量赋值 
if(!isset($_GET['model'])) //根据参数选择不同的模板 
{ 
 $smarty->display('model1.htm');     
} 
else 
{ 
 if(file_exists('templates/'.'model'.$_GET['model'].'.htm'))
 //判断模板文件是否存在 
 { 
  $smarty->display('model'.$_GET['model'].'.htm'); 
 } 
 else 
 { 
  echo "模板参数不正确!"; 
 } 
} 
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

  • YII分模块加载路由的实现方法

    YII分模块加载路由的实现方法

    这篇文章主要介绍了YII分模块加载路由的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • Laravel如何使用Redis共享Session

    Laravel如何使用Redis共享Session

    这篇文章主要介绍了Laravel如何使用Redis共享Session ,本文给大家介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
    2018-02-02
  • thinkphp模板继承实例简述

    thinkphp模板继承实例简述

    这篇文章主要介绍了thinkphp模板继承的实现方法,以一个简单实例的形式简述了ThinkPHP中父级模板与对应的继承方法,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-11-11
  • 关于laravel5.5的定时任务详解(demo)

    关于laravel5.5的定时任务详解(demo)

    今天小编就为大家分享一篇关于laravel5.5的定时任务详解(demo),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • thinkphp5框架路由原理与用法详解

    thinkphp5框架路由原理与用法详解

    这篇文章主要介绍了thinkphp5框架路由原理与用法,结合图文与实例形式详细分析了thinkPHP5框架路由的相关原理、使用方法及操作注意事项,需要的朋友可以参考下
    2020-02-02
  • 跟我学Laravel之安装Laravel

    跟我学Laravel之安装Laravel

    本文主要介绍了安装Laravel框架的几种方法,以及Laravel框架的服务器环境要求及相关配置,非常实用,有需要的朋友可以参考下
    2014-10-10
  • 基于php的微信公众平台开发入门实例

    基于php的微信公众平台开发入门实例

    这篇文章主要介绍了基于php的微信公众平台开发入门,实例分析了微信公众平台从注册、配置方法及接口代码的实现技巧,深入浅出,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • PHP中针对区域语言标记信息的操作

    PHP中针对区域语言标记信息的操作

    大家都知道Locale 类就是操作区域语言相关内容的,它无法被实例化,所有全部功能方法都是静态的。接下来通过本文给大家分享PHP中针对区域语言标记信息的操作,需要的朋友参考下吧
    2021-07-07
  • Zend Framework教程之Zend_Registry对象用法分析

    Zend Framework教程之Zend_Registry对象用法分析

    这篇文章主要介绍了Zend Framework教程之Zend_Registry对象用法,结合实例形式分析了对象注册表Zend_Registry的具体功能与相关使用技巧,需要的朋友可以参考下
    2016-03-03
  • php中用加号与用array_merge合并数组的区别深入分析

    php中用加号与用array_merge合并数组的区别深入分析

    本篇文章是对php中用加号与用array_merge合并数组的区别进行了详细的分析介绍,需要的朋友参考下
    2013-06-06

最新评论