微(wēi)信Api入口
微(wēi)信Api入口主要(yào)負責處理(lǐ)微(wēi)信公衆平♦π "台請(qǐng)求微(wēi)擎系統的(de)關鍵字、圖片、語音(yīn)等 '數(shù)據,文(wén)件(jiàn)是(shì)根目錄>$¶的(de)api.php 。此入口隻用(yòng)于公衆平台訪問±€Ω(wèn)。此入口主要(yào)完成以下(xià)工(gōng)作(z♦£®uò):
- 初始化(huà)當前公衆号的(de)數(shù)據
define('IN_API', true); require_once './framework/boπ← otstrap.inc.php'; load()->model('reply'); load()->app('common'); load()->classs('wesession ↔×'); $hash = $_GPC['hash'];
- 解析公衆平台推送過來(lái)的(de)數(shù)據結✘®構,轉化(huà)為(wèi)微(wēi)擎消息結構
- 根據消息結構中的(de)關鍵字或是(shì)事(shì)件(jiàn)匹配到(dào)相(✔±xiàng)應的(de)模塊
- 調用(yòng)模塊的(de)processor類返回數(shù)據給微(wēi)信公&↕共平台
微(wēi)贊的(de)插件(jiàn)的(de)目錄結構
addons 模塊安♦δ裝目錄(意為(wèi)附加組件(jiàn)) │ ├─ bu±φsiness ♣ ↓₽ 模塊的(de)名稱(示例) │ │ ├─ ima★¶ ₽ges 建'∏₹議(yì) css 文(wén)件(jiàn)也(yě)放(fàn××g)此目錄. │ │ ├─ template ≈✔ ™ 模闆目錄 │ │ │ →∏↔®├─ mobile APP ☆ 端模闆目錄 │ │ │ │ └─ ... *.html APP 端模闆文(wén)件(jiàn) │λ÷÷ │ │ └─ ... *.html Web 端模闆文(wén)件(j¶✘σiàn) │ │ ├─ inc ♣¥§ 引用(yòng)的(de) php 文(wén)件(jiàn)目錄 │ │ •↑'│ ├─ mobile Mγ ☆obile端目錄 │ │ │ │ ├─ xxx.inc.php ™↔¶∑ 微(wēi)站(zhàn)入口 │ •¥ │ │ │ └─ ... ✔☆ . │ │ │ └─ web ↔α←✔ Web端模闆目錄 │ │ │ ├─ Ω©βxxx.inc.php 微(wēi)站(zhàn)管★σ∑ 理(lǐ)入口 │ │ │ └─ ... ≠δ . │ │ ├─ icon.jpg ±≠ 模塊圖标 │ │ ├─≠£γ♥ preview.jpg 模塊預覽 │ ✔ │ ├─ manifest.xml $♦✘ 安裝清單 │ │ ├─ module.ph'Ω₩εp 模塊設置 → ↔│ │ ├─ processor.php ¶β® 消息處理(lǐ) │ │ ™β♦├─ receiver.php £γ♠ 消息訂閱 │ │ └─ site.php ♠≈α≠ 微(wēi•π∏)站(zhàn)頁面 │ └─ ... β✘ Ω 其他(tā)擴展模塊
$_GPC
全局請(qǐng)求變量, 獲取 $_GET, $_POST, $_≠δσ©COOKIES 中的(de)變量
$_W
$_W(大(dà)寫W),是(shì)系統中最為(wèi)重要(yào)的(de)全局變量,微$α®(wēi)擎系統中很(hěn)多(duō)常用(yòng)的(de)數(s∞∏hù)據都(dōu)存儲在這(zhè)個(gè)變量之中•'π
全局配置
變量名稱 | 類型 | 說(shuō)明(míng) | 示例 |
---|---|---|---|
$_W[‘config’] | array | 系統設置,存放(fàng)著(zhe)數(shù)據庫配置、緩存配置☆∑、全局配置 該配置項下(xià)的(de)值存在/data/config.↔→php文(wén)件(jiàn)中,更改時(shí)可(kě)以↕↕≈✔直接修改此文(wén)件(jiàn) |
|
$_W[‘timestamp’] | int | 當前時(shí)刻時(shí)間(jiān)戳 | |
$_W[‘charset’] | string | 系統字符編碼 | |
$_W[‘token’] | string | 系統表單驗證來(lái)源,使用(yòng) checksub∏λmit() 函數(shù)判斷表單提交時(shí),請(qǐng)在隐藏♥域中加上(shàng)此值 | |
$_W[‘clientip’] | string | 當前客戶端 IP 地(dì)址 | |
$_W[‘script_name’] | string | 當前腳本名稱,包含子(zǐ)路(lù)徑 | “/web/index.php” |
$_W[‘siteroot’] | string | 網站(zhàn)URL根目錄 | “http://pro/“ |
$_W[‘siteurl’] | string | 原始鏈接 | “http://pro/test.php?a=1&b=2“ |
$_W[‘attachurl’] | string | 附件(jiàn)URL目錄,如(rú)果開(kāi)啓遠(yuǎn)程附件(j♣≤>iàn)後,此值是(shì)遠(yuǎn)程附件(jiàn)地(dì)址 | “http://pro/attachment/“ |
$_W[‘attachurl_local’] | string | 附件(jiàn)URL本地(dì)目錄,永恒顯示本地(dì)的(dσ&e)附件(jiàn)目錄URL | “http://pro/attachment/“ |
$_W[‘attachurl_remote’] | string | 附件(jiàn)URL遠(yuǎn)程目錄,永恒顯示遠(y♦≠✔uǎn)程附件(jiàn)目錄URL | “http://ogs188fok.bkt.gdipper.com/“ |
$_W[‘isajax’] | boolean | 是(shì)否為(wèi)AJAX請(qǐng)求 | |
$_W[‘ispost’] | boolean | 是(shì)否為(wèi)POST請(qǐng)求 | |
$_W[‘ishttps’] | boolean | 是(shì)否是(shì)https協議(yì) | |
$_W[‘sitescheme’] | string | 當前系統的(de)協議(yì)類型,值為(wèi) http:// 或是(shì) https©÷σ:// | |
$_W[‘page’][‘titl∞Ω≈£e’] | string | 當前頁面标題 |
系統配置
變量 名稱 | 類型 | 說(shuō)明(míng) | 示例 |
---|---|---|---|
$_W[‘setting’][‘regedit$π¥♥’] | array | 注冊設置 | open 是(shì)否開(kāi)啓注冊 verify 是(shì)否審核新用(yòng)戶 code 是(shì)否開(kāi)啓驗證碼 groupid 注冊後默認用(yòng)戶組 |
$_W[‘setting’][‘remote’]≈↓× | array | 遠(yuǎn)程附件(jiàn) | type 當前遠(yuǎn)程附件(jiàn)類型 |
$_W[‘setting’][&lsqu©₽o;upload’] | array | 附件(jiàn)上(shàng)傳設置 |
公衆号相(xiàng)關
變量 名稱 | 類型 | 說(shuō)明(míng) |
---|---|---|
$_W[‘uniacid’] | int | 當前統一(yī)公号與account內(nèi)容一(yī)緻 |
$_W[‘uniaccount’] | array | 當前統一(yī)公号(主公号)信息 |
$_W[‘uniaccount’][‘uniacid& ☆δφrsquo;] | int | 當前統一(yī)公号 ID (uniacid) |
$_W[‘uniaccount’]☆↕ε♦[‘groupid’] | int | 當前統一(yī)公号套餐 |
$_W[‘uniaccount’][‘name♥₽¥’] | string | 當前統一(yī)公号名稱 |
$_W[‘uniaccount’][‘descrip↑ tion’] | string | 當前統一(yī)公号描述 |
$_W[‘current_module’] | array | 當前模塊信息數(shù)組 |
Web 端可(kě)見(jiàn)
變量 名稱 | 類型 | 說(shuō)明(míng) | 示例 |
---|---|---|---|
$_W[‘uid’] | int | 當前登錄的(de)操作(zuò)用(yòng)戶 uid | |
$_W[‘username’]♦∏ | string | 當前操作(zuò)用(yòng)戶名稱 | |
$_W[‘user’] | array | 當前操作(zuò)用(yòng)戶信息 | |
$_W[‘isfounder’]'γ | boolean | 是(shì)否站(zhàn)長(cháng) | |
$_W[‘role’] | string | 角色 | 取值範圍: ACCOUNT_MANAGE_NAME_OPERATOR(操作(z>βγσuò)員(yuán)) ACCOUNT_MANAGE_NAME_MANAGER(管理(lǐ)員(yu♠☆£án)) ACCOUNT_MANAGE_NAME_OWNER(所→¥π有(yǒu)者) |
網頁授權
變量 名稱 | 類型 | 說(shuō)明(míng) | 示例 |
---|---|---|---|
$_W[‘oauth_account’] | array | 當前子(zǐ)公号,可(kě)使用(yòng)的(de)網頁授權公衆号信息 | 可(kě)能(néng)是(shì)自(zì)己(lφα♣evel = 4) 可(kě)能(néng)是(shì)借用(yòng)的(de)别 ≥★∑的(de)認證服務号 可(kě)能(néng)沒有(yǒu)(level < 4 ¶<•φ且未借用(yòng)) |
URL 路(lù)由
入口腳本程序獲取到(dào)到(dào)URL中相(xiàng)關的(de)GETεΩ< 參數(shù),解析後進行(xíng)權限判斷,然後調用γ&☆✘(yòng)相(xiàng)應的(de)控制(zhì)器(qì)處≈ ♣•理(lǐ)這(zhè)個(gè)請(qǐng)求。該過程就(jiù)被稱₩'為(wèi)URL路(lù)由(routing)。
約定及使用(yòng)GET 參數(shù)中的(de)&nb↔α<♥sp;c、a、do為(wèi)微(wēi)擎系統的(de)×♦♣路(lù)由參數(shù),應當避免與系統參數(sh®¶'γù)沖突,在程序中可(kě)以使用(yòng) $controller
、$action
、$do
來(lái)獲取對(duì)應的(de)路(lù)由三個(gè)參數(shù)
地(dì)址URL地(dì)址路(lù)由
當傳入的(de)URL請(qǐng)求中包含一(yī)個(gè)名為(wèi) c、a、d↓♣o(可(kě)選) 的(de) GET 參數(shù),它即被視(shì∏₹≥)為(wèi)一(yī)個(gè)路(lù)由,例如(rú):
http://we7.cc/web/index.php?c=pla←™÷→tform&a=menu&
則會(huì)路(lù)由至 /web/source/platform/menu.ctΩ&rl.php 文(wén)件(jiàn)中
http://we7.cc/app/index.php?c=mc&←δ↕a=home&
則會(huì)路(lù)由至 /app/source/mc☆ /home.ctrl.php 文(wén)件(jiàn)中
模塊URL地(dì)址路(lù)由
當傳入的(de) c 值為(wèi) “site&rdqu→₩ o;, a 值為(wèi) “entry”時(shí)則是(shì↓↔ )一(yī)個(gè)模塊路(lù)由,例如(rú):
http://we7.cc/web/index.php?c=site&a=entry¶≈&do=themeset&m=we7_demo
則會(huì)路(lù)由至 /addons/we7_demo/site♥↕$.php 文(wén)件(jiàn)中的(de) doWebThemeset()
方法。
http://we7.cc/app/index.php?i=1&j=2&c=en↕★♥try&do=list&m=ewei_shopping
則會(huì)路(lù)由至 /addons/we7_demo/site.php&nbs✘✘→p;文(wén)件(jiàn)中的(de) doMobileList()
方法。
func
load()->func() - 加載系統公共函數(shù)
說(shuō)明(míng)
load()->func(string $string)
加載文(wén)件(jiàn)為(wèi) framework/function/*.funα"ε÷c.php
示例
// framework/function/logging.func.php
load()->func('logging');
class
load()->class() - 加載系統公共類
說(shuō)明(míng)
load()->class(string $string)
加載文(wén)件(jiàn)為(wèi) frame♦↑•work/class/*.class.php
示例
// framework/class/account.cl®♦ass.php
load()->class('account');
model
web
load()->web() - 加載web端公共函數(shù)
說(shuō)明(míng)
load()->web(string $string)
加載文(wén)件(jiàn)為(wèi) web/comm™$→on/*.php
示例
// web/common/tpl.func.php
load()->web('tpl');
app
load()->app() - 加載app端公共函數(shù)
說(shuō)明(míng)
load()->app(string $string)
加載文(wén)件(jiàn)為(wèi) app/common/*.php
示例
// app/common/tpl.func.php
load()->app('tpl');
作(zuò)者: NONO
出處:http://www.cnblogs.com/diligenceday/
企業(yè)網站(zhàn):/
開(kāi)源博客:http://www.github.com/sqqihao
QQ:287101329
微(wēi)信:18101055830