如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
(word完整版)PHPCMS整站源码分析
(word完整版)PHPCMS整站源码分析
(word完整版)PHPCMS整站源码分析
/**
代码分析版权所有:逆雪寒
*/
require’./include/common。inc.php’;
/**
看common.inc。php核心启动文件我们已经讲解完了。应该都明白了吧
*/
if($PHPCMS['ishtml']==1&&HYPERLINK"http://www。php。net/file_exists”file_exists(PHPCMS_ROOT。'/’。$PHPCMS['index']。’。’.$PHPCMS[’fileext’]))
{
HYPERLINK"http://www.php。net/header"header('location:’。$PHPCMS['index’]。’.'.$PHPCMS['fileext']);
HYPERLINK"http://www.php。net/exit"exit;
}
/**
phpcms允许在后台生静态和使用静态,这里就是先判断$PHPCMS['ishtml’](从文本缓存弄过来的.应该知道了吧)是否为1就是开启了。和这个静态的html文件是否存在。
*/
$channels=HYPERLINK”http://www。php。net/array”array();
$channels['article’]=$channels['down’]=$channels[’picture']=$channels[’info']=HYPERLINK"http://www。php。net/array”array();
foreach($CHANNELas$v)
{
$module=$v[’module’];
if($v['islink’]==0&&$MODULE[$module][’iscopy']==1)$channels[$module][$v['channelid']]=$v;
}
//获取频道模块的信息。都是从缓存中取的
$head['title']=$PHPCMS[’seo_title'];
$head['keywords']=$PHPCMS[’seo_keywords'];
$head[’description']=$PHPCMS['seo_description’];
//这个是网页的SEO(title,keywords,description)信息。这个写好了。网络蜘蛛会找你哦。
includetemplate(’phpcms','index’);
//template()函数是模板函数.这个就是这章的主题。往下会讲模板引擎的制作,大家都看到include了吧。它的参数是文件地址。那么就可以想到template()函数其实就是
//模板编译后的PHP文件地址。
phpcache();
/**
这个函数厉害了。用来自动生缓存页的(这个是页面缓存和数据库信息的文本缓存不是一会事),页面缓存,就是把你所看的页自动生成XX.html静态页。请注意前面代码。是不是有个header()跳转到静态页呀。
那静态页那里来的?就是给这个函数弄出来的.自动静态化了其实。@@是不是很简单呢。上菜先:
functionphpcache($is_js=0)
{
global$CONFIG,$cachefiledir,$cachefile;
if(!$is_js&&$CONFIG['phpcache']!=’2’)returnFALSE;
$contents=ob_get_clean();
if($is_js)$contents=strip_js($contents);
if($CONFIG[’phpcache']=='2’&&$cachefiledir&&$cachefile)
{
dir_create($cachefiledir);
file_put_contents($cachefile,$contents);
@chmod($cachefile,0777);
}
header('Expires:Mon,26Jul200005:00:00GMT');告诉浏览器此页面的过期时间(用格林威治时间表示),只要是已经过去的日期即可
header(’Last—Modified:’.gmdate('D,dMYH:i:s')。'GMT');告诉服务器本页最后修改日期.目的就是强迫浏览器获取最新资料
header('Cache-Control:no—cache,must—revalidate’);这句session_cache_limiter('private’)作用差不多.就是用户点击后退不会出现警告页。十分有用哦。大
17****21
实名认证
内容提供者
最近下载