微擎入门:微擎目录结构说明

2018-11-26 11:38
摘要:

现在的网络公司很多都把目光投向了微信开发,微擎是一个很好的微信开发产品,只要在后台配置好后做少许修改就可以搭建好微信开发后台,今天给朋友修改点功能,记录下微擎目录结构的说明。

目录结构 

pro 

├─ addons ………………………………………… 【模块安装目录】 (意为附加组件) 

│ ├─ business …………………………………… 模块的名称 (示例) 

│ │ ├─ images 建议 css 文件也放此目录. 

│ │ ├─ template 模板目录 

│ │ │ ├─ mobile APP 端模板目录 

│ │ │ │ └─ … *.html APP 端模板文件 

│ │ │ └─ … *.html Web 端模板文件 

│ │ ├─ inc 引用的 php 文件目录 

│ │ │ ├─ mobile Mobile端目录 

│ │ │ │ ├─ xxx.inc.php 微站入口 

│ │ │ │ └─ … . 

│ │ │ └─ web Web端模板目录 

│ │ │ ├─ xxx.inc.php 微站管理入口 

│ │ │ └─ … . 

│ │ ├─ icon.jpg 模块图标 

│ │ ├─ preview.jpg 模块预览 

│ │ ├─ manifest.xml 安装清单 

│ │ ├─ module.php 模块设置 

│ │ ├─ processor.php 消息处理 

│ │ ├─ receiver.php 消息订阅 

│ │ └─ site.php 微站页面 

│ └─ … …………………………………………… 其他扩展模块 

├─ api ………………………………………………… . 

│ └─ uc.php . 

├─ attachment ……………………………………… 附件文件夹 

│ ├─ audios ……………………………………… 音频附件文件夹 

│ └─ images ……………………………………… 图片附件文件夹 

│ ├─ global ………………………………… 系统公共文件夹 

│ │ └─ 上传年份 

│ │ └─上传月份 

│ │ └─ 随机文件名 

│ └─ $uniacid … ……………………………按公众号年月组织的图片文件 

├─ app ……………………………………………【微站(Mobile)入口】 

│ ├─ common . 

│ │ ├─ bootstrap.app.inc.php . 

│ │ ├─ common.func.php . 

│ │ └─ template.func.php . 

│ ├─ resource . 

│ │ ├─ css . 

│ │ ├─ fonts . 

│ │ └─ js . 

│ ├─ source 控制器 

│ ├─ themes 微站皮肤 

│ │ ├─ default 系统默认 

│ │ └─ … 自定义皮肤 

│ └─ index.php 微站入口 

├─ data ……………………………………………… . 

│ ├─ config.php.default . 

│ ├─ config.php 系统配置 

│ └─ db.php . 

├─ framework ………………………………………【微擎系统通用的工具类和方法】 

│ ├─ builtin ……………………………………【微擎内建模块】 

│ │ ├─ basic 文字回复模块 

│ │ ├─ core 会话消息统计 

│ │ │ └─ receiver.php . 

│ │ ├─ cover 通用封面回复 

│ │ ├─ default 默认回复模块 

│ │ ├─ music 音乐回复模块 

│ │ ├─ news 图文回复模块 

│ │ ├─ userapi 自定义接口回复模块 

│ │ └─ … . 

│ ├─ class ………………………………………… 系统功能类 . 

│ ├─ function …………………………………… 系统功能函数 

│ ├─ library ……………………………………… 其他函数库 

│ ├─ model ………………………………………… 业务功能model 

│ ├─ bootstrap.inc.php . 

│ ├─ const.inc.php . 

│ └─ version.inc.php 

├─ payment …………………………………………… 支付 

├─ web ……………………………………………… 【后台管理(Web)入口】 

│ ├─ common ……………………………………… 公用文件 

│ │ ├─ bootstrap.sys.inc.php . 

│ │ ├─ common.func.php . 

│ │ ├─ frames.inc.php . 

│ │ └─ template.func.php . 

│ ├─ resource …………………………………… 资源文件 

│ │ ├─ components JS组件 

│ │ ├─ css 样式文件 

│ │ ├─ fonts 字体资源 

│ │ ├─ images 图片文件 

│ │ └─ js 

│ │ ├─ app ………………………………… 系统js功能 

│ │ ├─ lib ………………………………… js第三方库文件 

│ │ └─ require.js ……………………… . 

│ ├─ source ……………………………………… 后台管理控制器 

│ ├─ themes ……………………………………… 后台管理视图 

│ │ ├─ default ………………………………… 内建后台管理样式 

│ │ └─ … ……………………………………… 定制界面样式 

│ └─ index.php 后台入口 

├─ api.php ………………………………………… 【公众平台与微擎系统通信的接口】 

├─ index.php ………………………………………… 微擎入口 

└─ install.php ……………………………………… 微擎安装程序


入口 

|–Web端入口” Web端入口主要负责微擎系统的后台管理功能,入口文件是 “/web/index.php” 

|、 

|–“App端入口” 主要负责微擎系统的前端“微站”、“个人中心”及其它普通用户访问的功能“/app/index.php” 

|、 

|–“微信Api入口” 主要负责处理微信公众平台请求微擎系统的关键字、图片、语音等数据,入口文件是 “api.php”


系统配置文件 “/data/config.php”.


数据库字典http://s.we7.cc/index.php?c=wiki&do=view&id=1&list=133


预定义常量http://s.we7.cc/index.php?c=wiki&do=view&id=1&list=14


系统


常量名类型描述

IA_ROOTstring微擎程序安装目录“pro”

ATTACHMENT_ROOTstring微擎程序附件目录“pro/attachment”

MODULE_ROOTstring当前模块目录“pro/addons/we7_store”

MODULE_URLstring当前模块 url“http://www.we7.cc/addons/we7_store/“

TIMESTAMPint获得当前系统时间,格式为Unix时间戳,相当于调用 time(),这个时间戳定义于当前页面开始时,在同一个页面请求响应过程中不变

CLIENT_IPstring当前客户端 IP 地址“255.255.255.255”

公众号


常量名类型描述

ACCOUNT_SUBSCRIPTIONint普通认阅号1

ACCOUNT_SUBSCRIPTION_VERIFYint认证认阅号3

ACCOUNT_SERVICEint服务号2

ACCOUNT_SERVICE_VERIFYint认证服务号4

ACCOUNT_TYPE_OFFCIAL_NORMALintAPI接入的公众号1

ACCOUNT_TYPE_OFFCIAL_AUTHint授权接入公众号2

ACCOUNT_TYPE_APP_NORMALint正常接入小程序4

全局变量


$_GPC

全局请求变量, 获取 $_GET, $_POST, $_COOKIES 中的变量

1

2

$_W

$_W(大写W),是系统中最为重要的全局变量,微擎系统中很多常用的数据都存储在这个变量之中,下面我们详细讲解一下此变量的结构。

1

2

全局配置


变量名称类型说明示例

$_W[‘config’]array系统设置,存放着数据库配置、缓存配置、全局配置该配置项下的值存在/data/config.php文件中,更改时可以直接修改此文件

$_W[‘timestamp’]int当前时刻时间戳

$_W[‘charset’]string系统字符编码

$_W[‘token’]string系统表单验证来源,使用 checksubmit() 函数判断表单提交时,请在隐藏域中加上此值

$_W[‘clientip’]string当前客户端 IP 地址

$_W[‘script_name’]string当前脚本名称,包含子路径“/web/index.php”

$_W[‘siteroot’]string网站URL根目录“http://pro/“

$_W[‘siteurl’]string原始链接“http://pro/test.php?a=1&b=2“

$_W[‘attachurl’]string附件URL目录,如果开启远程附件后,此值是远程附件地址“http://pro/attachment/“

$_W[‘attachurl_local’]string附件URL本地目录,永恒显示本地的附件目录URL“http://pro/attachment/“

$_W[‘attachurl_remote’]string附件URL远程目录,永恒显示远程附件目录URL“http://ogs188fok.bkt.gdipper.com/“

$_W[‘isajax’]boolean是否为AJAX请求

$_W[‘ispost’]boolean是否为POST请求

$_W[‘ishttps’]boolean是否是https协议

$_W[‘sitescheme’]string当前系统的协议类型,值为 http:// 或是 https://

$_W[‘page’][‘title’]string当前页面标题

Web 端可见


变量 名称类型说明示例

$_W[‘uid’]int当前登录的操作用户 uid

$_W[‘username’]string当前操作用户名称

$_W[‘user’]array当前操作用户信息

$_W[‘isfounder’]boolean是否站长

$_W[‘role’]string角色 取值范围:ACCOUNT_MANAGE_NAME_OPERATOR(操作员)ACCOUNT_MANAGE_NAME_MANAGER(管理员)ACCOUNT_MANAGE_NAME_OWNER(所有者)