社区
基础编程
帖子详情
phplib里怎么得到模板被替换后的全部内容
jjwxg
2003-08-22 10:12:43
...//以上内容省略
$t->tpl_content=parse("out","newshow");
echo $t->tpl_content;
是这样子么?
...全文
32
1
打赏
收藏
phplib里怎么得到模板被替换后的全部内容
...//以上内容省略 $t->tpl_content=parse("out","newshow"); echo $t->tpl_content; 是这样子么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
feel8
2003-08-22
打赏
举报
回复
$t-> set_var("tplpath", $path);
$t-> pparse("mainPage", "main");
php
lib
模板
中文版手册
一份详细的
php
lib
模板
中文版手册 该
模板
类允许你在一些外部文件中保留HTML代码,这些文件完全不包含
PHP
代码,只含有用以
替换
的字段(译注:就是下文中所说的变量的"引用")。这个类就提供了一些可以让你用任意的字符串填入欲
替换
字段的函数。
Blue Magic Board v5.0
新增功能: 1. 小的改动和错误修复 2. 采用
PHP
LIB
模板
技术 3. 特殊的
模板
替换
函数 4. 全新
模板
格式以及内容,更方便修改 5. 不再兼容 4.x 风格信息文件,新信息文件扩展名 .bs5 6. 增加emule和bt标签 (by bob) 7. 可以不直接显示图片附件 8. 动画表情符号 9. 论坛备份/恢复系统可备份更多重要数据(如联盟论坛) 10. 程序自动更新系统,无需阅读任何说明文件,程序自动升级您的论坛。 11. 插件管理器(by Bob Shen)
asp
模板
引擎终结者(WEB开发之ASP模式)
阐述一种全新的ASP
模板
引擎,实现代码(逻辑)层与HTML(表现)层的分离.这种
模板
实现方法避免了一 般ASP
模板
加载
模板
文件(加载组件)和
替换
所浪费的资源,实现编译型的
模板
引擎,提高程序的执行速度和稳定性。内容: 当前,WEB开发已经变得非常火爆,因为各种应用,已经约来越要求表现层和逻辑层的分离.ASP和HTML夹在一起程序将变得难于维护,可读性也差。在
PHP
领域,
模板
引擎已经非常普遍,如
php
lib
,SMARTY,等等.有使用
替换
方式的,也有编译方式的(SMARTY),它们都较好的实现了逻辑层和表现层的分离.由于
PHP
的影响,在ASP界有人借鉴
php
lib
等使用
替换
的方法开发
ease template
你用过Ease Template吗?
PHP
工程中的
模板
应用,关于它的好处,我想无论是在实际开发阶段还是上升到设计模式的角度都已经有很多“前辈先哲”"讨论过了。就项目实施而言,在一些中型甚至大型的项目中,有效的将HTML(还有其他文本形式的表现层)和
PHP
代码分开,不仅在开发阶段可以提高界面设计人员和应用程序编写人员的工作效率,更会给项目的测试和维护带来巨大的便利。 什么是
模板
技术?
PHP
模板
发展自Perl的Template。剥开神秘的面纱,
模板
技术的核心概念简单得令人心跳:要将你的美工页面指定为
模板
文件,只需将页面中活动的内容部分(如数据库输出,用户交互等)定义成形式为的变量放在
模板
文件中相应的位置,当用户浏览时,由
PHP
程序文件打开该
模板
文件,将
模板
文件中定义的变量进行
替换
。当然,
替换
成对应的数据库输出或者用户交互等动态生成内容。 Ease Template
模板
能够改善网站的结构,其特点有: * 可以在几秒钟改变整个站点的外观; * 可以让网站更容易实现多语言; * 抽象程序设计,没有垃圾HTML代码; * 稳定性能初期的强大甚至超越混编代码; * 提供完善的 Debug 平台; * 开发效率快地令人惊讶; * 更容易重用模版; * 开源版权保护(保证您的版权不会被侵犯)。
模板
技术经过很多年的发展已经演变出各式各样的类型:
php
lib
就效率而言在大量应用的时候效率会降低很多,但是拥有语法简单的优势;Smarty 语法强大效率很高,问题是架构庞大,语法过于复杂。如果你正在设计一个交互式网站,你一定会关注两个主要的问题:美工和程序。这也是一个网站在建设中抛开其内容之后最关键的要素。 通常有两种方式来协调美工和程序之间的关系: 1.先做好美工页面,然后由程序员直接在美工页面的HTML文件中嵌入ASP、JSP、
PHP
等程序代码。 2.美工和程序同时进行,但这时因为没有页面框架,程序只能先做出部分代码,双方完成后再进行一次美工页面和程序代码的嵌入合成。 在实际的网站建设过程中,由于人员、进度等环境的限制,大家通常会混合使用上面两种协调方式。然而这两种方法都有不足之处: 1. 效率不高。两者协调不好可能产生等待、重复代码调试等现象; 2. 调试不畅。由于程序代码最终需要嵌入在HTML页面中,代码的嵌入、调试、纠错都比较繁琐; 3. 维护不便。一旦美工设计需要修改,如网站改版,那么所有程序和HTML代码混合页面都需要重写。 如果你正在使用
PHP
程序建设网站,那么恭喜你,
PHP
的
模板
技术会比较圆满地解决上述问题。
模板
应用与结构,以往的开发流程如下: 流水线1:网站设计 -> 切图转为htm ->
php
工程师写程序 -> 程序套用htm -> 开发结束。 如果存在修改时流程如下: 流水线1:网站设计修改 -> 切图转为htm ->
php
工程师改程序 -> 程序套用htm -> 修改结束。 采用Ease Template之后将有一些区别性的变化,开发流程如下: 流水线1:
php
工程师写程序与简单
模板
-> 程序测试 -> 开发结束。 流水线2:网站设计 ->
模板
工程师修改(Dreamweaver) -> 开发结束。 修改流程如下: 流水线1:网站设计修改 ->
模板
工程师修改(Dreamweaver) -> 修改结束。 流水线2:程序员工作被释放出来 Ease Template相对于Smarty或
php
lib
提供更简单更高效的方法,甚至可以将数据库运用方法直接写入
模板
中,这样将无须复杂的数组转换操作。 目前发行的任何一套
模板
引擎都没有提供开源商业化版权保护。公司开发出的程序,有可能被合作方转卖或盗用。使用Ease Template便不用再为此问题担心,它提供了版权保护设置。开发方启用版权保护设置并对所有程序运行一次后将生成版权保护代码。开发方不需提供程序
模板
给合作方,程序仍可以独立完整运行。如果合作方需要修改原始
模板
将非常复杂甚至无法修改。商业版本的程序如果没有
模板
要修改页面对于任何人都将是非常头疼的工作,而采用Ease Template的开发者则按正常流程即可完成所有的修改工作。 Ease Template 经过多年的发展已经被很多框架所采用,其中比较有名气的当属Flea
PHP
、Think
PHP
。有些框架直接集成了Ease Template插件,用户选择Ease Template的时候无需担心兼容性以及稳定性。 当Ease Template用户觉得方法过少造成不知如何使用的时候,可以运用{run:}
php
方法{/run},此操作完全支持系统的所有方法以及用户自己写的方法。 看到这
里
也许您提出一个问题,那就是Ease Template具有这么多功能那他的速度又能达到什么程度?举个例子:对Ease Template三个引擎进行1万次循环并且载入多个
模板
情况下的测试结果:
替换
引擎0.06秒、编译引擎0.04秒、MemCache引擎0.03秒。与各种
模板
比较,Ease Template编译引擎的速度已经远远超越同类大部分
模板
,所以您无需为Ease Template的速度担心。 Ease Template
模板
技术的基本概念就介绍到这
里
,请继续关注更加有趣的功能介绍。
ChineseFramework大型WEB应用框架程序
技术特点及优势: 1. 框架没有和实现混在一起. 我发这个
里
面的实现只是一个例子. 让大家知道如何调用.. 2. 关于不好向
PHP
5移植, 我从没想过要移植到
PHP
5上. 因为如果要移值, 你敢说你的框架不要改.. 恐怕要改的也不在少数.就算你勉强凑合着用上了,
PHP
5的新功能都没有加上, 你所谓的移植还有 什么意义啊. 3. 异常处理部分, 你说和返回值没有区别, 说明你还没有仔细看这个异常.. 这个异常可以跨函数, 几层函数调用后也照样没问题. 另外, 可以返回一些其它的附加信息. 最最最最最重要的是, 你可 以自定义异常类来捕获. 假如: YourException extends Exception 你捕获 catch( YourException ) 时如果发 生的是Exception类时, 程序就会捕捉不到.. 反之, 如果发生了YourException, 而程序捕获 的是catch( Exception )时, 则能捕获到.. 因为所有异常继承自Exception就是也能像语言级 异常处理一样, 可以做到一个默认处理.. 4. 1) 数据库处理的优势, 框架中抽象出一个Abstract Database(数据库抽象层)出来, 使得上层不 用关心底层数据库, 而由些层完成一系统转换. pfcDB在此基础上进行数据库操作. 2) pfcTable类, 此类可以使得你在程序中在大多时间不需要输入SQL语句(除非包含很 复杂的很多函数的语句或针对某种数据库平台的语句)即可完成对数据库的操作.. 如选择, 插入, 更 新, 删除等, 选择时可以对多表进行关联, 并可选left join, right join, inner join 等多 种联接方式. 对于选择出的结果可以以多种形式返回, 如二维表格(MapResult), 以某一列为键的 二维表格(MapResultOnKey), 单一行(MapOneRow), 单一列(MapOneColumn), 某列为键, 某列 为值的哈希表(MapHashTable) 等多种形式.. 插入和修改时, 程序自动决定SQL语句形式, 并可以自动根据字段类型决定是否使用引号包裹字 段内空(如果设置了欢迎,默认), 是否自动对特殊字符进行转义(防SQL Inject, 可设置是否开启, 默认为关). 并支持多种参数形式, 如键为字段名, 数组值为字段值的
PHP
数组, 如: array( field1 => xxx, field2 => xxx2, ) 也可是设置好的字段($tblObj->setFields(array( field1 , field2 )) $tblObj->insert(array(xxx, xxx2)); 3) 数据单一记录抽象. 为那些对于某字段有一个可以唯一确定的键的记录的访问提供了方便的途径 使用本类可以方便的对单一记录进行读取, 修改等..使用举例: $item = new pfcRecord($dbObj, table1 , Name , 帅的像人渣 ); echo $item->get( Favorite ); $item->set( Favorite , make .... ); $item->set( Name , zhazha ); $item->commit(); if($e = catch( SQLException )) { echo 发生成错误:
. $e->GetErrorText(); if(defined( debug )) echo
SQL: . $e->getSqlSegment(); } else echo 修改成功 ; 5. 输入输出封装. pfcInputStream, pfcOutputStream. 从底层实现对输入输出管理, 再也不用 再也不用关心是否开启了register_global. 统计一使用各种变量(也有办法区分具体是GET还是 POST,COOKIE, SESSION等.), 并且不用关心是否启用了 magic_quotes_gpc. 程序会自动处理. 不用怕用户输入非法了.为你打造一个安全的程序提供一个安全的环境. 输出由于采用了pfcOutputStrem 类进行封装, 再也不怕不小心出 现在header之前进行输出了.(没经过本类的不算) 并可在输出前进行可种处理. 如压缩(可手工用自己的算法或ob),
替换
等操作. 使用举例: $instream = new pfcInputStream(); $out = new pfcOutputStream(); $in = $instream->parse_incoming(); echo $in[ xxx ]; //取变量xxx, 无论GET, POST, COOKIE, SESSION或文件 echo $in[ _GET ][ xxx ]; //取GET中的变量xxx, 依此类推. POST, COOKIE, //SESSION, FILES等 $out->add_output( xxxx ); //添加一个串 $out->do_output(); //输出 //---------------------------------------------------------------- //其它可调用的方法(非必须) //---------------------------------------------------------------- $out->get_content(); //取出当前缓冲区内容 $out->replace_keyword($arr); //对当前缓冲区内容进行
替换
.$arr格式为 // array( key => val , ....); $out->clear_buffer(); //清空缓冲区 6. 多语言处理, 在底层做好了多语言处理的工作. 使得开发多语言程序时变的很easy. 7.
模板
处理,采用新算法的
模板
处理类。 在数据量不是很大的页面中速度比
PHP
LIB
快。 (<200) 支持自定义标记, 无限套嵌区块等. 8. 合理的文件组织管理, 使代码昼合理化、不重复、易移植。
模板
、逻辑、实现、图片、基础类、UTIL类 分离。 并可改变位置(改变时改变相应常量) 9. 统一程序入口、逻辑实现分离 符合MVC模式。 10.合理的业务逻辑设计, 包括标准的添加,修改, 删除, 取一条数据, 取列表, 计算总数,transData (对返回给UI层的数据进行转换)和untransData(对入库数据根据需要变换)能力。
基础编程
21,886
社区成员
140,364
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章