PHP中Smarty初使用——实现前端页面与php代码的分离

2 篇文章 0 订阅

Smarty概念

Smarty是一个使用PHP写出来的模板引擎,是业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。----来自百度百科

安装Smarty

直接前往官方下载最新的Smarty压缩包,解压得到以下文件:
在这里插入图片描述

使用Smarty

项目环境初始化

首先我们单独创建一个项目文件夹phpPracticalTraining,然后把Smarty文件夹中的libs文件夹复制到phpPracticalTraining里面,然后创建templatescompiles文件夹,templates中放置我们的前端页面,compiles中放置经过Smarty编译的之后的文件(自动由Smarty完成,不需要我们关心),最后再创建一个cache文件夹,其作用是放置页面的缓存文件,提高页面渲染速度。

编写代码,实现前端页面与php代码分类

  1. 在项目根目录下,编写smarty_config.php配置smarty的一些参数
<?php
	//文件的引入
	include './libs/Smarty.class.php';
	 
	//定义smarty所使用的文件目录
	define('SMARTY_ROOT','./');
	//实例化对象
	$smarty = new Smarty();
	$smarty->cache_dir="caches";//缓存文件夹可选为减轻压力
	$smarty->caching=false;//关闭缓存,调试中建议关闭,默认为关闭,在实际运行的时候请打开,减轻服务器压力
	$smarty->template_dir="templates";//设置模版目录
	$smarty->compile_dir="compiles";//设置编译目录必选
?>
  1. smarty_config.php导入到我们的后端php(index.php)代码当中,并向前端页面传数据
<?php
	include 'smarty_config.php';

	$data = array(
		array(1,'xdl','boy',20),
		array(2,'zhf','boy',21)
	);
	//向前端页面模板传递变量
	$smarty->assign('title','学生信息');
	$smarty->assign('data',$data);
	 
	//指定模板文件显示 
	$smarty->display('index.html');
?>
  1. templates文件夹中的前端页面(index.html)接收数据,再返回整个页面到客户端
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>{$title}</title>
</head>
<body>
	<table border="1">
		<tr>
			<td>学号</td>
			<td>姓名</td>
			<td>性别</td>
			<td>年龄</td>
		</tr>
		{foreach from=$data item=v}
			<tr>
				{foreach from=$v item=v2}
					<td>{$v2}</td>
				{/foreach}
			</tr>
		{/foreach}
	</table>
</body>

最终的项目文件目录:
在这里插入图片描述

运行结果

最后,我们访问http://localhost/phpPracticalTraining/index.php(注意:是访问后端php文件,而不是直接访问前端页面,否则无法得到后端的数据),成功得到结果。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值