inc目录下的一些文件介绍
目录classes,db_cached,js三个目录和若干个以inc.php为后缀的文件。从目录的名字就可以大概看出其中的文件的作用是什么。
一、admin_design.inc.php
里面提供了一个很重要的函数
function PageCodeAdmin($oTemplate = null) { if(empty($oTemplate)) $oTemplate = $GLOBALS['oAdmTemplate']; $iNameIndex = $GLOBALS['_page']['name_index']; header( 'Content-type: text/html; charset=utf-8' ); echo $oTemplate->parsePageByName('page_' . $iNameIndex . '.html', $GLOBALS['_page_cont'][$iNameIndex]); }
这个函数提供所有模块的管理界面入口,外部会提供$oTemplate和相应的参数,根据$iNameIndex,去template目录下找到相应的页面进行渲染.举个栗子,administration目录下db.php文件中就将$iNameIndex设为15;设置其他参数后渲染page_15.html.
二、admin.inc.php
里面提供了很多函数,比如activation_mail,check_logged,check_login,check_password,getID,member_auth,profile_delete,update_date_lastnav等等。看到名字就知道意思了,列在这里供以后写代码用。
三、banners.inc.php
这个文件里跟用户有关系的只有$bann_click_url,点击banner后跳到哪儿由这个决定。
四、db.inc.php
里面生成了一个BxDolDB的实例,然后把所有的方法都包一遍,还真的很像我们现在那个框架里用静态类实现的基础设施。
值得注意的是一个db_last_id方法,很有用的。
五、design.inc.php
这个文件里有一个oFunctions变量,这个变量的定义在哪里呢?在模板文件里面,对于每一个模板都有这么一个变量。
通过require_once( BX_DIRECTORY_PATH_ROOT . “templates/tmpl_{$tmpl}/scripts/BxTemplFunctions.php” );包含进来。
这个文件里定义了$oFunctions = new BxTemplFunctions(),BxTemplFunctions类继承自BxBaselFunctions类,包含了所有模板用到的函数。
六、header.inc.php
这个文件里记录了系统配置。
七、images.inc.php
里面有所有image相关的函数
function imageResize( $srcFilename, $dstFilename, $sizeX, $sizeY, $forceJPGOutput = false )
function produceSecurityImage( $text, $hash );
function applyWatermark( $srcFilename, $dstFilename, $wtrFilename, $wtrTransparency );
function moveUploadedImage( $_FILES, $fname, $path_and_name, $maxsize=”, $imResize=’true’ );
八、languages.inc.php
里面是语言相关的函数,一般开发是用不到的,但是曾经有这么一个场景:在语言目录下放置zh和cn两个语言包都表示中文简体,设置缺省语言为zh,论坛模块经常会显示的事cn的翻译语言,当时我很疑惑,现在有了代码就一切真相大白了。
九、match.inc.php
这个文件里将来会是有大用处的,现在是普通的对比个人profile里的field,有多少相同的来决定两人的匹配度的。将来用上神经网络/向量机/机器学习算法,可以进行好友推荐,甚至商品推荐。开发这块儿的人可以看一下智能web算法http://book.douban.com/subject/6545083/
十、tags.inc.php
主要函数是exploedTags,分割标签。其他的函数就是插入标签了。
注:本篇随笔,主要是整理转载网友“安静”的知识分享。(http://www.njuxdj.com/?p=95)