首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

深入探究Smarty模版

http://www.php10086.com/2012/02/387.html 简介:本文简要浅析smarty的工作机制,以及smarty其他配置和使用方法 smarty百科: Smarty是一个使用...缓存技术:Smarty选用的一种缓存技术,它可以将用户最终看到的HTML文件缓存成一个静态的HTML页,当设定Smarty的cache属性为true时,在Smarty设定的cachetime期内将用户的...方法有两种: 1:就是用程序读取相应的数据来替换模版中的变量,然后生成静态页。php中主要用到的就是要用到fread()和fwirte()。而静态页面生成了之后,就会牵扯到修改的问题。...这里可以用到正则匹配的方法来替换模版中改变的部位 content = str_replace ("{file}", PS:这种方法修改和更新效率不是很高,一般都用于那些变化不是很频繁的页面. 2:利用ob...> smarty方式生成HTML静态页面 工作原理: ? Smarty的工作原理解析机制: 下面看看SMARTY是怎么做的。

6.5K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    PHP smarty

    ("liu","wang"),array("ming","yi")); $smarty->assign("testArr", $arr); //设置模版变量,为将要调用的模版提供变量,在接下来调用的模版中可以通过...A{ function aa($nam){ echo $nam; } } $smarty->assign("obj", new A); //设置的模版变量是对象时在模版页可以如下这样调用...,给模版传类对象时也是传址 //{$obj->aa('my name is y')} //Smarty可以识别嵌入在双引号中的模版变量,只要此变量只包含数字、字母、下划线。...#parent 只有当前模版引入该配置文件语句后包含的模版中,或在php源文件中smarty对象调用该配置文件后调用的模版中可以使用该配置文件中的键值 #global 测试效果和parent相同 #在模版中通过...//$smarty->getDebugging();//得到当前是否进行调试,默认false //或在需要调试的模版中写入{debug} /* 模板文件: smarty3.0支持了模版继承系统,例如

    2K30

    Smarty模板语法详解

    本文实例讲述了Smarty模板语法。分享给大家供大家参考,具体如下: 所有模版标签用分隔符包围,默认为“{”和“}”。...方法:一个避免出现这种情况的好习惯是把你的javascript/css代码分离出来保存成一个独立文件,再用html方法链接到模版中。这样做也有利于浏览器缓存脚本。...在Smarty模版,如果‘{’和‘}’大括号里包含有空格那么整个{}内容会被忽略,你可以设置Smarty类变量$auto_literal=false来取消这种规则。...;} {/literal} </script {literal}…{/literal}块被用来忽略模版语法的解析,你也可以用{idelim},{rdelim}标签或{smarty.Idelim}、{smarty.Idelim...}、{smarty.rdelim}变量来忽略个别大括号(译注:后面两种方法主要用来在模版中输出左右大括号)。

    1.4K20

    浅谈smarty MVC框架

    背景 这次又是项目开发遇到的问题,做一个简单的表单处理,将数据写入数据库,流程很简单,由于客户不了解php框架导致我开发用了原生php,当我交付的时候对方说需要使用mvc方式且需要使用smarty框架,...找了这个框架是因为,网上的其他文章并没有介绍mvc,都是将libs文件拿出来,这个框架有控制器、视图层,运行只需要指向run文件夹即可 如果学习过tp框架的同学入门很快 附上操作手册 模板 在当前模版文件中包含其他的模版文件使用...include标签,标签用法: 模版表达式的定义规则为 控制器/操作 {include file=“index/header.tpl” } // 包含头部模版header {include file...=“index/menu.tpl” } // 包含菜单模版menu {include file=“index/foot.tpl”} // 包含尾部模版 模板变量赋值 $this -> assign

    17230

    基于PhalApi的Smarty拓展

    当然不是在之前也有童鞋放出过一个View拓展,使用之后还是有一些不方便的地方,所以引入一个比较老牌的PHP模版引擎Smarty来解决这类问题,本拓展提供了对Smarty的封装,而且Smarty内容比较多在此处不会依依交与大家使用...{/section} 此时我们再次运行Default.Index接口就有如下显示: setParams函数作为参数的媒介把接口中获取的参数放到模版里面进行处理...,接受一个数组具体实现是对每一个参数进行assign操作,具体可以参考Smarty 我们在show默认不传递参数是,会更具模块名和接口名来匹配对于的模版,比如Default.Index就会匹配到view.../Default/Index.tpl,当然我们也可以指定跳转到摸个模版,比如创建一个模版名称为test.tpl,然后创建一个Default.test接口,我们在index接口进行一些修改 DI()->smarty..."Default.test"); 这个时候我们访问Default.Index接口的时候就会先执行Default.Index的代码然后在执行,test方法的代码最好渲染Default中的test.tpl模版

    90350

    Smarty模板配置实例简析

    本文实例讲述了Smarty模板配置。分享给大家供大家参考,具体如下: Smarty简介 Smarty是一个php模板引擎。更准确的说,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法。...配置方法 前话:Smarty使用一个名为’SMARTY_DIR’的php常量作为它的系统库目录。...基本上,如果你的应用程序可以找到Smarty.class.php文件,你不需要设置SMARTY_DIR,Smarty将会自己运作。...正文:下载smarty压缩文件,解压到php网站根目录,可以提前看看demo文件夹内的内容,强烈推荐你为每个用到smarty的应用程序设置单一的目录(如同Smarty安装包里的demo的文件结构)!.../libs/Smarty.class.php"); //实例化smarty对象 $smarty = new Smarty(); //设置模板的标签标识 $smarty- left_delimiter =

    84420
    领券