smarty笔记
smarty 笔记
display():
把html包含进来
然后用正则匹配php变量
把匹配好的页面重新保存
inclue载入刚才的保存的页面
1.smarty原理
2.smarty安装
3.smarty模板设计
4.smarty程序设计
四个默认文件夹//可在 smarty().__construct改
cache
configs
templates
templates_c
style 和 script的 {} 要注意替换 用left_delimiter("<{")
$s->right_delimiter("}>")
使用模板的时候 smarty就用<{ 代替{
$s->caching = true;//开启缓存
包含图片,css,js要相对于index.php的路径,因为index.php包含执行
./当前目录
../上级目录
基本语法:
注释 {* xxxxx *}
模板中的类对象
$s->assign("obj",new Person());
{config_load "index.conf"} // bgcolor="#ccc";
<body bgcolor="{#bgcolor#}">
操纵php超全局数组
$smarty.get.id <===> $_GET['id'];
//pdo
$pdo = new pdo("mysql:host=localhost;dbname=test","root","root");
$pdo -> setAttribute (PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_ASSOC);
$pdo -> setAttribute (PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$pdo ->exec("set names utf8");
//分页
<?php
include ("smarty.inc.php");
include ("pdo.inc.php");
$page = $_GET['page']?$_GET['page']:1;
echo $s->isCached($smarty_dir."/templates/index.html",$page);
if(!$s->isCached($smarty_dir."/templates/index.html",$page))
{
$totsql = "select count(*) from user";
$sth = $pdo -> prepare($totsql);
$sth ->execute();
$tots = $sth -> fetchColumn();
$length = 3;
$offset = ($page - 1) * $length;
$prepage = $page - 1;
$nextpage = $page;
if($nextpage < ceil($tots/$length))
{
$nextpage = $page + 1;
}
else{
$nextpage = $page;
}
$sql = "select * from user order by id limit $offset,$length";
$sth = $pdo->prepare($sql);
$sth -> execute();
$rows = $sth -> fetchALL();
$s -> assign("rows",$rows);
$s -> assign("prepage",$prepage);
$s -> assign("nextpage",$nextpage);
}
$s -> display($smarty_dir."/templates/index.html",$page);
?>
index.html
<body>
<table width="500px" border="3px solid #ccc">
<{foreach $rows as $val}>
<tr>
<td><{$val.id}></td>
<td><{$val.username}></td>
</tr>
<{/foreach}>
</table>
<a href="../index.php?page=<{$prepage}>" title="">上一页</a>|
<a href="../index.php?page=<{$nextpage}>" title="">下一页</a>
</body>
smarty笔记的更多相关文章
- Smarty笔记 和20个常用的变量操作符
什么是Smarty变量操作符php模板引擎smarty内置的一些操作函数,我们称之为变量操作符,变量操作符可用于操作变量,自定义函数和字符.(跟我PHP中常用的PHP内部函数类似)他可以帮助我们完成很 ...
- 160726 smarty 笔记(1)
模板里面显示变量:1.变量要写在Smarty标记之间,变量名以$开头<{$test}>2.支持所有类的数据,包括数组(关联数组),对象关联数组在模板显示的时候,除了可以使用php语法之外, ...
- 160726 smarty 笔记(2)
<?php //取当前页 $p=1; if(!empty($_GET["page"])) { $p=$_GET["page"]; } //定义页面缓存文件 ...
- smarty之缓存笔记
smarty缓存技术 在smarty中,缓存分为:普通缓存,单模版都缓存,局部缓存. 缓存:1:首选打开缓存配置项:$smarty->caching=true; 2:缓存生命周期的配置选项:$s ...
- Smarty学习笔记(二)
1.引用 {include file="xxx.xxx" sitename="xxx"} 向引入的文件传入变量: {include file="xxx ...
- Smarty学习笔记(一)
1.Smarty的配置: 将lib的内容复制到自己的工程,然后引入 实例化和配置Smarty基本属性: $smarty = new Smarty(); $smarty->left_delimit ...
- PHP-MVC和Smarty初探笔记
在慕课网上学习了PHP的MVC的基础知识,记录一下笔记: 等待更新~
- smarty详细使用教程(韩顺平smarty模板技术笔记)
MVC是一种开发模式,强调数据的输入.处理.显示是强制分离的 Smarty使用教程1.如何配置我们的smarty解压后把libs文件夹放在网站第一级目录下,然后创建两个文件夹templates 存放模 ...
- Yaf + Smarty 整合笔记
Yaf真的是太简单了,简单到使用mvc的时候在view里面需要手写php脚本.因此考虑整合一下smarty模板引擎.随心所欲也正是yaf的魅力 Yaf 安装 这里简单说一下yaf的安装,已经是非常无脑 ...
随机推荐
- Maven从入门到精通(二)
上一篇我们讲解了Maven项目的基本目录结构,也已经安装了Maven的开发环境,接下来我们要重点讲解一下Maven最核心的灵魂pom.xml文件 POM:Project Object Model 项目 ...
- 常用DOS命令及编程软件fa
1.常用的dos命令(应用) 在接触集成开发环境之前,我们需要使用命令行窗口对Java程序进行编译和运行,所以需要知道dos命令. 打开命令行窗口的方式:win + r打开运行窗口对java程序进行编 ...
- 阿里云安装filezilla
1.连接服务器 ssh 或者 远程连接 到服务器: 2.安装相应软件 安装EPEL,EPEL是yum的一个软件源,里面包含了许多基本源里没有的软件: yum -y install epel-relea ...
- win10+vs2013+pcl1.8.0(x86) 环境配置遇到的各种小问题解决
1.PCL提供了各自的PDB调试文件(解压后放入pcl安装目录的bin下) 2.OpenNI的安装需同其余在pcl第三方库文件夹下 3.添加附加依赖项的.lib文件请按照网上对应版本添加,另外需要每行 ...
- Django查询数据库返回字典dict数据
个人观点: 个人认为,在Django项目中, 开发团队为了让使用该框架的用户都使用自带的序列化功能,从而让框架中的SQL返回值很不直观,对于直接使用SQL语句的用户很犯难. 解决: from djan ...
- vue中出现 There are multiple modules with names that only differ in casing的问题
import时,文件引入的路径描述不统一,所以保留一种引入风格即可解决. 第一种,我选择统一用第一种 import GoTop from '@/components/layout/goTop' 第二种 ...
- vue-nuxt--切换布局文件
1.暂时没有找到服务器端渲染 非服务器端切换: window.$nuxt.setLayout('blog')
- Assets.xcassets的使用
先介绍下Asset Catalog,Asset Catalog是Xcode5引入的一个新的图片管理方式,有几个好处: 1.自动管理图片,如@1x,@2x图片,使用的时候使用Asset 名字即可 2.管 ...
- java 判断5张牌的组成
题目: 一副牌中发五张扑克牌给你,判断是四条,三带二.三带一加一.两对.一对.顺子.还是什么都不是. 控制台输入: 1,1,1,1,2 示例输出: 四条 Java方法的代码: static Strin ...
- hier - 文件系统描述
DESCRIPTION 描述 一个典型的Linux系统具有以下几个目录: / 根目录,是所有目录树开始的地方. /bin 此目录下包括了单用户方式及系统启动或修复所用到的所有执行程序. /boot 包 ...