PHP工程改成微擎的步骤_微擎模块开发流程
http://wq.90ckm.com/app/index.php?i=2&c=entry&eid=15
1234
i
:是公众号的站内
id
c
=
entry
:应用入口
eid
:用户安装后的应用
id
数据表:
ims_modules 模块表,一个模块应该有一个记录
ims_modules_bindings ,模块后台菜单表记录,一个模块有N多记录(eid=15)
ims_uni_account_modules,公众号应该有的权限及配置信息,如果没有可以忽略
前台原始(使用app):
http://xxxx.com/app/./index.php?i=2&c=entry&eid=15
MVC形式
http://xxxx.com/app/index.php?i=2&c=entry&do=index&m=two_eggs
do=index
前台方法====>doMobileXXX
=============>doMobileIndex方法
后台原始(使用web)
http://xxxx.com/web/index.php?c=site&a=entry&eid=17&version_id=0
MVC形式
http://xxxx.com/web/index.php?i2&c=site&do=Confs&m=two_eggs
do=Confs==> site.php
后台方法====>doWebXXX
=============>doWebConfs方法
site.php
1234567891011121314151617181920212223
<
?
php
/**
* wmc_happynewyear模块微站定义
*
* @author 287851074
* @url
*/
defined
(
"IN_IA"
)
or
exit
(
"Access Denied"
)
;
class
wmc_happynewyearModuleSite
extends
WeModuleSite
{
// 前台方法
public
function
doMobileIndex
(
)
{
//这个操作被定义用来呈现 功能封面
}
// 后台方法
public
function
doWebConfs
(
)
{
//这个操作被定义用来呈现 管理中心导航菜单
}
// 后台方法
public
function
doWebUsers
(
)
{
//这个操作被定义用来呈现 管理中心导航菜单
}
}
参考:
执行 http://xxx.com/web/index.php?c=site&a=entry&eid=6 系统是如何找到具体模块中的对应方法的?下面简单梳理一下:
web目录下的index.php 包含了require ‘../framework/bootstrap.inc.php’;
在bootstrap.inc.php的最后读取controller,action,do
$controller = $_GPC[‘c’];
$action = $_GPC[‘a’];
$do = $_GPC[‘do’];
index.php继续往下走,require _forward($controller, $action);
function _forward($c, $a) {
$file = IA_ROOT . ‘/web/source/’ . $c . ‘/’ . $a . ‘.ctrl.php’;
return $file;
}
包含了 /web/source/site/entry.ctrl.php
在entry.ctrl.php里:
从ims_modules_bindings表里读取eid=6的记录到$entry,然后根据记录加载模块,
$site = WeUtility::createModuleSite($entry[‘module’]);
define(‘IN_MODULE’, $entry[‘module’]);
…
$method = ‘doWeb’ . ucfirst($entry[‘do’]);
exit($site->$method());
例如$entry[‘do’]是stores,那实际调用的方法是模块目录下site.php里的doWebStores
PHP工程改成微擎的步骤_微擎模块开发流程相关推荐
- PHP工程改成微擎的步骤_php微擎二次开发实战教程之今日头条小程序
第一课(微擎介绍安装).mp4 95.1M 第五课(微擎模块工作流程解析).mp4 126.3M 第四十一课(小程序发布到官方应用市场).mp4 26.6M 第四十课(文章收藏).mp4 74.1M ...
- 怎样把xp计算机语言改为英文,xp系统电脑语言改成英文的恢复步骤
今天和大家分享一下关于对xp系统电脑语言改成英文设置的方法,在使用xp系统的过程中经常不知道如何去对xp系统电脑语言改成英文进行设置,有什么好的办法去设置xp系统电脑语言改成英文呢?在这里小编教你只需 ...
- 佳能 c3000 系统设置改语言,win7如何更改语言 win7系统中将电脑语言改成英文的方法步骤介绍...
今年evad3rs团队发布的iOS 7完美越狱工具有些特殊,中国版iOS7完美越狱工具中,捆绑有太极助手插件,此插件类似流氓插件,容易导致iOS越狱设备出现白苹果现象(国外版无此插件).所以就出现了一 ...
- [MFC]将基于对话框的工程改成基于BCG的
Step1 stdafx.h 加入如下内容.BCGCBProInc.h间接导入了lib. #include <BCGCBProInc.h> // BCGControlBar Pro#if ...
- golang微服务框架对比_微服务里程碑,Golang与Spring Cloud Alibaba完美结合
目前微服务架构仍是软件架构中最新的热门话题,虽然Golang是一门新的语言,但Golang的性能比python和java高出不少.既能承受程序使用运行的服务构建的繁重负载,又容易与GitHub集成,管 ...
- 微服务认证模式_微服务之“网关模式”
定义 API网关是一个服务器,它是系统中的单个入口点,用户对API网关进行单一呼叫,然后API网关调用每个相关的微服务器.它类似于面向对象设计的Facade模式.API网关封装内部系统架构,并提供针对 ...
- 微服务可靠性测试_微服务可靠性设计
1.背景 微服务化之后,系统分布式部署,传统单个流程的本地API调用被拆分成多个微服务之间的跨网络调用,由于引入了网络通信.序列化和反序列化等操作,系统发生故障的概率提高了很多.微服务故障,有些是由于 ...
- 微智魔盒骗局_微智魔盒官宣
原标题:微智魔盒官宣 微智魔盒官方宣传视频 微达国际集团创建于2011年,是一家坚持创新的集科研.产销.服务为一体的智能化产业平台,致力于国际领先的专注人工智能领域的产业投资.项目孵化.教育培训,并提 ...
- 微服务升级优点_微服务–——定义, 原则 和 优点
微服务是业界最新的流行语,似乎每个人都在以这样或那样的方式谈论它.让我们理解一下什么是微服务?通过这篇教程我们将理解微服务的定义,概念以及微服务的原理. 微服务的定义 如今,微服务是SOA(面向服务的 ...
最新文章
- HDU4920(矩阵连乘)
- 专访东软杨纪文:深入业务做好移动安全防护
- 三方支付(支付宝为例)
- 【数字图像处理】七.MFC图像增强之图像普通平滑、高斯平滑、Laplacian、Sobel、Prewitt锐化详解
- Python 全栈开发十 socket网络编程
- leetcode83,删除有序链表中的重复元素
- linux软件读取不到空间,Linux下Oracle软件、数据文件等所在的磁盘分区空间不足的解决思路...
- AQS及其组件的核心原理
- Windows Phone开发手记-WinRT下启动器替代方案
- 面向对象(OOP)基本概念及基本语法
- 【元胞自动机】基于matlab元胞自动机收费站交通问题【含Matlab源码 357期】
- nexus下载地址分享
- java计算机毕业设计高校墨香文学社管理系统源码+mysql数据库+系统+lw文档+部署
- 计算机中丢失d3dx9_30.dll,Win10不能玩《仙剑5》提示缺少d3dx9_30.dll的解决方法
- 值得收藏的22个搜索下载免费PDF电子书的网站
- live2d_碧蓝航线:老婆们在外服都长啥样?她惊艳四座,Live2D独此一家
- 在linux中运行电子词典,《Linux下电子词典的设计和实现》.doc
- 站在2021年开端,我从AWS那里看到了云计算未来
- OCR(Optical Character Recognition,光学字符识别)技术详解
- 《航空气象》杂志期刊