永发信息网

wecenter的目录结构是按照什么来分类的

答案:1  悬赏:0  手机版
解决时间 2021-01-08 04:33
wecenter的目录结构是按照什么来分类的
最佳答案
例如:system目录中有class、config、core、Services、Zend目录
系统函数?系统设置?初始化? 有哪位高手能从 概述上 功能上 程序的哪个层面上 清晰地 讲一下各个目录的作用。最好不要用什么:系统基础函数这种很泛泛的讲法。
学习过程:
一、php文件的大致登场顺序:
先从安装好后出现在web根目录的index.php来看:
{{{

if (! file_exists(dirname(__FILE__) . '/system/config/database.php') AND
! file_exists(dirname(__FILE__) . '/system/config/install.lock.php')
AND !defined('SAE_TMP_PATH'))
{

header('Location: ./install/'); 若没有安装,则读取安装目录,默认执行index.php(为什么会默认执行index为名的php,这个是要在httpd.conf中设置,百度可以搜索"DirectoryIndex"相关知识)

exit;
}
include('system/system.php'); //在php中include与require的区别在于,require出错会引起一个致命的错误(fatal error )程序停止执行,而inclue出错则只会给出一个警告,程序继续执行。有了system/system.php
我们来看一下system/system.php里带出了哪些东西:(从之前几个修改记录可以看出,当在代码里面,加入代码、加粗、斜体字都无效果了,这个可以在以后自己二次开发的时候进行优化)
if (! defined('AWS_PATH'))
{

define('AWS_PATH', dirname(__FILE__) . '/');

//
__FILE__是代码所在文件的完整路径(注意不是url路径),dirname():是获取去掉文件名后的目录路径。
dirname(__FILE__):就是获得当前代码所在文件的目录。假设__FILE__为/home/web/config/test.php,上
面的方法输出为/home/web/config。
//system/init.php与system/system.php中都有define AWS_PATH这个常量的语句,具体为什么会有两次定义,下次看到再说。
}
if (defined('G_GZIP_COMPRESS') AND G_GZIP_COMPRESS === TRUE)
{

if (@ini_get('zlib.output_compression') == FALSE)

{

if (extension_loaded('zlib'))

{

if (isset($_SERVER['HTTP_ACCEPT_ENCODING']) AND strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== FALSE)

{

ob_start('ob_gzhandler');

}

}

}
}
require_once (AWS_PATH . 'init.php');
//AWS_PATH="xxxx/system/",所以引用了/system/init.php
//wecenter程序中用来定义所有常量的文件,常量采用全部大写的方式,例如:IN_SAE,ROOT_PATH这些都是在这个里定义的。
require_once (AWS_PATH . 'aws_app.inc.php'); //引用了/system/aws_app.inc.php Wecenter系统初始化文件
require_once (AWS_PATH . 'aws_controller.inc.php');//引用了/system/aws_controller.inc.php
require_once (AWS_PATH . 'aws_model.inc.php');//引用了/system/aws_model.inc.php
AWS_APP::run();
//由于在system.php中已经包入了aws_app.inc.php,所以可以直接使用AWS_APP(类名)直接调用静态成员函数run()。
这里的run函数又调用了AWS_APP类中的init(),主要功能是:将AWS_APP的静态成员变量都用"system/core/静态成员变量名
称.php"初始化成为这个"system/core/静态成员变量名称.php"中定义的类的对象。
//所以在以后的程序里,会看见很多,AWS_APP::config()【反回了一个get(Param)所属类的对象,类所在文件:core
/config.php】->get('image')【返回了一个配置名称为image的类的对象/数组,类所在文件:config
/image.php】->avatar_thumbnail【此处为config/image.php中关联数组中的key名称,由此来访问
avatar_thumbnail所对应的的真实value】这样的结构。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
2017年1月18号这个日子搬迁新房好不好,我属
阳历77年2月4日阴历是几号
廊坊到塘沽的火车车次都有哪些?
有份文件不会做,有没有人愿意帮我
什么是驱动测试 驱动测试
北京今后发展的产业部门应该是A.加工工业B.制
没上玻璃险前风挡被砸了怎么办?能走保险吗?
含有“桑”字的词语或成语有哪些?
有一个男歌手叫什么田,两个字的,田字在后面
因为我爱她,所以我放不下,可她说自己已经有
苹果电脑什么软件是word文档
我女儿7岁了,可以打麻腮疫苗吗
求英文介绍洋流
我的QQ怎么·每次上线都说身份验证失败,请你
安驰轮胎汽车装饰地址在什么地方,我要处理点
推荐资讯
C语言编程,从键盘上输入n(n<=20)个整数存入
月宫一号的系统原理
单选题近年来发现北极地区冰川消融速度加剧,
国有独资公司和法人独资公司有什么区别
胭脂为什么叫胭脂
公司安检门为什么皮鞋不能过衣服拉链两条都能
横滨轮胎(友谊西路)地址有知道的么?有点事想
c19400是什么铜合金
怎样用arduino实现脉冲计数器
解压文件part1和part2是放在一个文件夹里面解
老款2005年奥拓空调线路在哪
求一个英文名字,要Y开头的?谢谢
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?