现在主要在知乎,地址:https://www.zhihu.com/people/qqrrm 老的文章在:http://blog.csdn.net/pyp

Mantis解析(四)

上一篇 / 下一篇  2011-08-19 19:39:54 / 个人分类:测试

(四)core.php到底做了什么

下面的分析,我没有解释全部代码,只是挑选主要的说明Mantis都在后面做了哪些魔法,感兴趣的可以直接去看完整的代码。

 

1.     constant_inc.php

45行:require_once( dirname( __FILE__ ).DIRECTORY_SEPARATOR.'core'.DIRECTORY_SEPARATOR.'constant_inc.php' );

这个是Mantis中定义的常量,在各种函数中,调用的很多不是硬编码,而是对应的常量数值。

50,51行的

if ( file_exists( dirname( __FILE__ ).DIRECTORY_SEPARATOR.'custom_constants_inc.php' ) ) {

      require_once( dirname( __FILE__ ).DIRECTORY_SEPARATOR.'custom_constants_inc.php' );}

这个是如果你需要定义自己的常量,请在根目录下面新建custom_constants_inc.php文件,把自己定义的常量定义到此文件中。按照基本的原则,没有绝对必要,不要修改Mantis中原有的文件,Mantis本身已经给你留下了自定义的接口文件,此custom_constants_inc.php文件就是。

下面还有很多类似的情况,有一个缺省的Mantis配置文件,就有一个对应的用户自定义文件

2. config_defaults_inc.php

62行:require_once( dirname( __FILE__ ).DIRECTORY_SEPARATOR.'config_defaults_inc.php' );

config_defaults_inc.phpMantis系统默认的各种参数。此文件和下面config_inc.php是同样作用的文件,但是config_defaults_inc.php是系统预设的,config_inc.php是用户自己定义的。

3. config_inc.php

64-67

# config_inc may not be present if this is a new install

if ( file_exists( dirname( __FILE__ ).DIRECTORY_SEPARATOR.'config_inc.php' ) ) {

      require_once( dirname( __FILE__ ).DIRECTORY_SEPARATOR.'config_inc.php' );

      $t_config_inc_found = true;}

安装或升级Mantis的时候,自动把数据库等信息写到此constant_inc.php文件中。如果需要自己定义一些参数,也都是在此文件中写入,可以写入的参数参考doc目录内administration_guide.pdfChapter 5. Configuration章节。在根目录的config_inc.php.sample文件内也有一些相关的示例。总之,自己需要定义的参数,就在config_inc.php中实现。

如果config_inc.phpconfig_defaults_inc.php参数有重复的情况,以config_inc.php中定义的为准。

4. custom_function_api.php

244行:

require_once( 'custom_function_api.php' );

用户自定义的函数,请加入到此文件中,缺省没有此文件,需要的时候自己建立。

5.其他

Core.php里面还定义了很多内容,比如载入core目录下面的各种api文件,定义时区,出否加载wiki等,但是主要的,还是上面的几个文件。

 

总结,core.php主要加载Mantis使用的资源和库文件,不妨当成缺省的命名空间,而且预留了用户的接口,主要就是变量config_inc.php、常量custom_constants_inc.php、函数custom_function_api.php,后两个文件缺省没有,需要的时候由用户手工建立。在自己定义或开发的过程中,不要修改Mantis的原文件,都使用此三个文件即可。

具体的示例,参考doc目录内administration_guide.pdfChapter 7. Customizing MantisBT


TAG:

 

评分:0

我来说两句

日历

« 2024-04-30  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 70548
  • 日志数: 47
  • 图片数: 2
  • 文件数: 2
  • 建立时间: 2006-11-24
  • 更新时间: 2023-01-29

RSS订阅

Open Toolbar