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

时间:2022-09-25 17:47:43

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

模板model1.htm代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<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代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<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代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<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页面实现:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?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程序设计有所帮助。