以header.php头文件为例剖析一套CMS文件结构

 时间:2026-02-12 22:51:24

1、首先,我已将网站文件htdocs下的所有文件都已下载到本地,便于随时查看和更改。简介中配图是该网站的头部,找到文件中的_header.php文件。

以header.php头文件为例剖析一套CMS文件结构

2、用notepad++编辑器打开_header.php文件如下。如图即头部文件的一部分。很显然箭头所指的几个地方调用了一个函数,实现某些功能,这个名为acbyclassid的函数一般放置在func.php这个文件中,我们一起去找一找。结果没有。

以header.php头文件为例剖析一套CMS文件结构

3、一般_header.php文件会被所有页面请求调用require,我们去首页index.php看看这个页面调用了什么文件。如下,_inc.php文件。

以header.php头文件为例剖析一套CMS文件结构

4、这样我们再去看_inc.php文件,找找看有没有acbyclassid函数在,果不其然在这里。

以header.php头文件为例剖析一套CMS文件结构

5、下面研究一下这个函数干嘛用的。

function acbyclassid($a,$b){

$data="";(定义一个字符串变量赋值为空)

$classid=$GLOBALS['db']->v("my_cata|classid|classid='$b'");(经研究这是一个全局类,v()函数的意思是对双引号中的内容按'|'进行切割,my_cata是数据库表名,classid是栏目的id字段名,这个语句的意思是定义一个字符串并将v()函数切割后的classid值返回给classid这个变量)

if($GLOBALS['cfg_html'])(这个是判断一个存储.html文件布尔值的全局变量)

{

$data="$a-$classid.html";(如果是则将传递来的a值替换掉,classid值也替换为上面的赋值)

}

else

{

$data="$a.php?classid=$classid";(如果判断非.html文件则采用这种动态链接形式)

}

$url=$GLOBALS['db']->v("my_cata|url|classid='$b'")."";(这句的意思是将my_cata里的url赋值给$url变量)

if($url!="")(判断是否为空)

{

$data=$url;(赋值给$data变量)

}

echo $data;(输出$data值)

}

这样就解释清楚了,实际上这个函数的作用就是判断后形成一个可用的url链接的。

  • php自学及header函数的详解
  • php header函数的详解
  • 如何避免头文件被重复包含
  • 如何修复缺失头文件security的错误
  • Visual Studio 2015如何添加头文件和源文件
  • 热门搜索
    九华山旅游景点 黑龙江省旅游局政务网 上海旅游集散地 河北邢台旅游景点 布鲁塞尔旅游 余姚旅游网 天津旅游教育网 天津五大道旅游攻略 去台湾旅游攻略 上海市旅游集散中心