知道了smarty的运行原理之后,就想写个post的实现过程,以下是实现post的代码,跟独自写php代码差不多,只是多了显示文件
配置文件:conf.php
复制代码 代码如下:
<?php
@header("Content-type: text/html; charset=UTF-8");
require '../libs/Smarty.class.php';
$my=new Smarty;
$my->template_dir ='templates/';
$my->compile_dir ='templates_c/';
$my->config_dir ='configs/';
$my->cache_dir ='cache/';
?>
index.php
复制代码 代码如下:
<?php
include 'conf.php';
$my->assign('content','welcome to arrival');
$my->assign('mylife',array("生活","吃饭","梦想","凉风","报仇","fuck someone","fuck you die"));
$my->display('kk.html');
?>
template下的kk.html【index.php的显示文件】
复制代码 代码如下:
<!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=utf-8" />
<title>无标题文档</title>
</head>
<body>
{$content}
{section name=truelife loop=$mylife}
{$mylife[truelife]}
{/section}
<p>{html_select_time use_24_hours=true} </p>
<form method="post" action="submit.php">
<p>
<label for="conteng"></label>
<input type="text" />
</p>
<p>
<label for="ct"></label>
<textarea cols="45" rows="5"></textarea>
</p>
<input type="submit" value="提交" />
</form>
<p> </p>
</body>
</html>
submit.php
复制代码 代码如下:
<?php
include 'conf.php';
$kk=$_POST['conteng'];
$ct=$_POST['ct'];
$sm=new Smarty();
$sm->assign('content',$kk);
$k=explode("\r\n",$ct); //将字符分隔为数组
$sm->assign('ml',$k);
$sm->display('m.tpl');
?>
template下的m.tpl文件【submit.php的显示文件】
复制代码 代码如下:
{$content}
{section name=kk loop=$ml}
{$ml[kk]}<br />
{/section}