很多站长朋友们都不太清楚网站开发php模板,今天小编就来给大家整理网站开发php模板,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php 的框架与模板 2、 用PHP制作静态网站的模板框架(二) 3、 PHP模板怎么用 php 的框架与模板楼主的认知不对哦,以下为楼主解惑:
框架:在php源码的基础上,开发者将常用的功能进行二次封装形成的代码集合,其本身往往不具备任何可用的功能,其目的仅仅是使开发人员可以基于框架更快的开发出符合要求的应用。例如,不使用框架开发一个用户管理功能可能需要5天,使用框架可以将这个时间缩短到2天。实际上,对于任何一个项目,访问控制、数据库访问、文件处理等功能都是必备的,框架就是将这些常用功能进行了更易用的封装,避免开发人员在通用组件上重复开发,浪费时间。
模板:为了将PHP内容和html内容更好的分离为目的产生的一种应用,其主要目的是为了网页制作人员可以不去学习PHP就能修改页面的内容(可惜不学PHP还要学smarty,因此我个人并不觉得模板真的能带来什么实际的好处)
另外,如dede,DZ,PHPCMS等是基于PHP的产品,本身已经具备了大量的功能,安装之后就能使用,当然,因为需求的不同可能需要在该产品的基础上进行二次开发。
综述,模板没有太大的价值,完全可以在非用不可的时候再去学习,对于PHP开发人员来说,smarty可以立刻上手。它可以(也只能)被框架或PHP产品使用。框架是必须掌握的,定制性很强的项目必然都是基于框架开发的。PHP产品,如果你要开发的项目和某个PHP产品的功能达到80%以上的契合,那么应该考虑基于该产品进行开发。
一些网站提供简单的博客,留言板等的源码,不基于框架的小项目实际上只能称为练习,只有参考价值。
注:不是说不使用框架的项目就不算项目,事实上如果一个项目如果没有使用某某框架,其项目的一部分代码也必然的会具有框架的特征,即自定义框架也是框架。
用PHP制作静态网站的模板框架(二)PHP代码全部保存到单独的文件中,这个文件也就是由页面URL实际调用的文件。Web服务器通过PHP引擎解析该文件,然后把结果返回给浏览器。一般地,PHP代码总是动态地生成页面内容,比如查询数据库或者执行某种计算等。下面是一个例子:
<?php
//
example.php
require('class.FastTemplate.php');
$tpl
=
new
FastTemplate('.');
$tpl->define(
array(
'main'
=>
'main.htm',
'header'
=>
'header.htm',
'leftnav'
=>
'leftnav.htm'
)
);
//
此处的PHP代码设置$content使其包含合适的页面内容
$tpl->assign('CONTENT',
$content);
$tpl->parse('HEADER',
'header');
$tpl->parse('LEFTNAV',
'leftnav');
$tpl->parse('MAIN',
'main');
$tpl->FastPrint('MAIN');
?>
这里我们使用的是流行的FastTemplate模板类,但其基本思路对于其他许多模板类来说都一样。首先你实例化一个类,告诉它到哪里去寻找模板文件以及哪一个模板文件与页面的哪部分对应;接下来是生成页面内容,把结果赋予内容的标识符;然后,依次解析各个模板文件,模板类将执行必要的替换操作;最后把解析结果输出到浏览器。
这个文件完全由PHP代码构成,不包含任何HTML代码,这是它最大的优点。现在,PHP程序员可以集中精力编写生成页面内容的代码,而不必为了如何生成HTML去正确地格式化最终页面而担心。
你可以使用这种方法和上面的文件构造出一个完整的网站。如果PHP代码是以URL中的查询字符串为基础生成页面内容,例如,你可以据此构造出一个完整的杂志网站。
很容易看出采用模板还有第二个好处。如上例所示,页面左边的导航条单独保存为一个文件,我们只需编辑这一个模板文件就可以改变网站所有页面左边的导航条。
PHP模板怎么用php网站模板使用方法如下:
逻辑和现实分离,显示全部用静态页面的html代码。
把要显示的变量用一个特定的字符串放进去(一般都是<!--{$str}-->这种形式)。当然,模板文件不一定非要是html后缀,你可以用任何后缀。
逻辑层处理完业务逻辑就要包含模板文件显示了。
包含的思想就是用fopen打开文件,把文件内容读到一个字符串变量里。
然后用正则表达式把<!--{$str}-->替换成$str,最后用echo输出就行了。
关于网站开发php模板的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于网站开发php模板 php网站开发实战教程的详细内容...