国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運(yùn)營 > 微擎框架(自定義分享在最下面)

微擎框架(自定義分享在最下面)

時(shí)間:2023-06-09 06:39:02 | 來源:網(wǎng)站運(yùn)營

時(shí)間:2023-06-09 06:39:02 來源:網(wǎng)站運(yùn)營

微擎框架(自定義分享在最下面):首先是介紹一下微擎的框架,微擎是一個(gè)基于微信開發(fā)的框架,可以開發(fā)微信H5和微信小程序,但微擎微信小程序的框架已經(jīng)很長時(shí)間沒有更新了,用于微擎開發(fā)的h5還怪多的,在微擎商城中可以購買使用別人開發(fā)好的模塊有名氣的如人人商城,之前公司是使用微擎框架做H5的,項(xiàng)目是一些簡單的單頁面H5,所有了解一些微擎的使用,下面我就來詳細(xì)的說說微擎的使用

這是安裝模塊manifest需要注意的東西

這是安裝微擎的基本目錄,addons中是存放模塊目錄,可以這么說,在addons中每一個(gè)文件就是一個(gè)模塊,在微擎框架中分為app端和web端,app端就是正常訪問模塊的鏈接,web呢是訪問微擎后臺(tái)的鏈接,framework目錄也是比較重要的目錄,需要使用的class也是在該目錄中的class目錄中,

這是appons/模塊 下面的正常目錄,site.php和manifest.xml是必不可少的文件,site是相當(dāng)于路由吧,manifest是安裝模塊時(shí)候的文件,如果沒有manifest文件微擎是無法安裝該板塊的,當(dāng)然沒有安裝該模塊是訪問不到該模塊的 inc 可以在有site的條件下充當(dāng)路由吧,比如你訪問到一個(gè)模塊的index方法,如果site中沒有定義該方法可以到inc目錄下找該方法無論在site或者inc目錄下都有分前后臺(tái)區(qū)別

這是site中定義方法

inc下分別前后臺(tái)的是不同目錄

里面php文件名稱就是不同的方法,都要加.inc的尾綴

通過該url的形式訪問到該模塊

安裝模塊和訪問模塊就這樣的可以了,下面是具體功能、

獲取用戶信息

在用戶沒有關(guān)注公眾號(hào)的情況下,不能使用$_W['fans']的數(shù)據(jù),這是關(guān)注公眾號(hào)的用戶才有這數(shù)據(jù),那么用戶沒有關(guān)注公眾號(hào),但又需要用戶數(shù)據(jù)怎么辦呢

mc_oauth_userinfo(); //進(jìn)入h5 授權(quán)獲取用戶信息 之后在獲取$_W['fans']就會(huì)有用戶信息,需要注意的是,進(jìn)入h5先判斷有沒有用戶信息沒有在授權(quán)獲取用戶信息,如果是關(guān)注了的用戶不需要授權(quán)也是可以獲取到用戶信息的,如果不做判斷可能用戶體驗(yàn)較差

生成url

$this->creatrMobileUrl('index'); //前臺(tái)地址 index方法路由的前臺(tái)地址

$this->createWebUrl('confs'); //后臺(tái)地址 confs方法路由的后臺(tái)地址

在視圖中如需要發(fā)送ajax請求的時(shí)候url可以這么寫

{php echo $this->creatrMobileUrl('index')}

模板調(diào)用

{template '路徑/模板名稱'} //引入模板 相對路徑{template 'common/模板名稱'} //這是調(diào)用公共模板 建議使用公共模板在那呢

微擎視圖中使用功能

微擎自帶驗(yàn)證碼 https://blog.csdn.net/sunxiaowen13/article/details/79539797(verify());

$verify -> imgcode();//驗(yàn)證碼 checkcaptcha($code) //驗(yàn)證//驗(yàn)證碼 前端顯示,PHP文件中驗(yàn)證只需要 checkcaptcha($code) 返回值 bool?解:用法是單獨(dú)提供一個(gè)路由方法給驗(yàn)證碼,然后在前端頁面中獲取該路由的方法顯示驗(yàn)證碼,后端使用checkcaptcha($code) 驗(yàn)證


靜態(tài)文件目錄 相當(dāng)于頁面下面addons/模塊名/resource/

define("S_URL", "/addons/{$_GET['m']}/resource/"); //在site中定義模板中輸出變量

{$name} //輸出變量循環(huán)

{loop 數(shù)組 $row} //單個(gè)數(shù)據(jù)為$row{/loop}判斷

{if 條件} //true{else} //false{/if}寫php代碼

{php $變量=$變量+1;} //混編php<a href="{php echo $this->createMobileUrl('頁面');}"></a> //實(shí)例php混編單文件上傳

{php echo tpl_form_field_image('name值');} //單文件上傳

數(shù)據(jù)庫

增刪改查

注意 pdo_insert/pdo_delete/ pdo_update/pdo_get/pdo_getall方法表名不需要前面的 ims_

tablename() 這個(gè)方法是加表前綴的(需要的加不需要的不加)

pdo_insert('表名', 數(shù)據(jù)數(shù)組, $replace=false[是否替換]) //增 第三個(gè)參數(shù) 沒有就添加 有就替換pdo_delete('表名', 條件數(shù)組, $glue='AND/OR') //刪 第三個(gè)參數(shù) 條件條件 與 或 pdo_update('表名' ,數(shù)據(jù)數(shù)組, 條件數(shù)組, $glue='AND/OR') //改 第三個(gè)參數(shù) 條件條件 與 或pdo_get('表名' ,條件數(shù)組 ,字段數(shù)組); //查一條 pdo_getall('表名', 條件數(shù)組 , 字段數(shù)組,) //查多條 pdo_fetchcolumn("select count(*) from ".表名." where iswin = :iswin ",array('iswin'=>1)); //查詢滿足條件的個(gè)數(shù) pdo_query('sql') //執(zhí)行一條非查詢語句 pdo_query("DELETE FROM".tablename('表名')."WHERE 條件字段=:站位符",array(':前面的站位符'=>2))數(shù)據(jù)分頁

$list = pdo_fetchall('SELECT * FROM ' . tablename('hbyh_qrj_gift') . ' LIMIT ' . (頁數(shù) - 1) * 每頁多少條 . ', ' . 每頁多少條); //分頁數(shù)據(jù)?在模板中循環(huán)遍歷數(shù)據(jù) {$page} 顯示現(xiàn)在頁數(shù)鏈?zhǔn)讲樵?/b>

手冊 ::http://s.w7.cc/index.php?c=wiki&do=view&id=1&list=452

查詢用戶表中的前十條男性的用戶數(shù)據(jù)

實(shí)例:$query = load()->object('query');$row = $query->from('表名')->where('條件', '1')->orderby('字段', 'desc倒敘')->limit(10 條數(shù))->getall();左關(guān)聯(lián)的表

實(shí)例:$query = load()->object('query');$row = $query->from('users', 'u')->leftjoin('users_profile', 'b')->on('u.id', 'b.uid')->where('u.id', '525')->get();//來自 users 左鏈接 users u.id=b.uid 條件是u.id=525 的一條記錄鏈表查詢

注意 原生的sql 操作需要加表的前綴

pdo_fetchall('SELECT * FROM ' . tablename($this->table_activity) . ' as i inner join '. tablename($this->table_actclass) .' as c on i.class_id = c.id WHERE i.id=:id', array(':id'=> $id));//查詢來自 表i 內(nèi)連接 表c on關(guān)聯(lián)條件 i的class_id=c的id 條件(i的id=占位符)pdo_fetch($sql) // 根據(jù)SQL語句,查詢一條記錄pdo_fetchall($sql); // 查詢?nèi)坑涗?/span>

微擎函數(shù)

公共函數(shù)

TIMESTAMP 常量當(dāng)前時(shí)間戳 (秒)istripslashes($var) //去除字符串或者數(shù)組中的轉(zhuǎn)義符 (/) 字符串/數(shù)組 ihtmlspecialchars ($var) //轉(zhuǎn)義字符串或數(shù)組中的的HTML,例如將 “php” 轉(zhuǎn)化為 &quot;PHP&quot; 字符串/數(shù)組 isetcookie($key, $value, $expire = 0, $httponly = false) //cookie 操作 cookie名稱 cookie值 過去時(shí)間 是否允許Javascript讀取防止xss攻擊 建議登錄等信息開啟此項(xiàng) token() //提交表單時(shí)的來源校驗(yàn)碼 與 checksubmit() 函數(shù)配置使用,提交表單時(shí)的來源校驗(yàn)碼 //<input name="token" type="hidden" value="{$_W['token']}" /> 與 token() 一樣 checksubmit($var = 'submit', $allowget = false) // 驗(yàn)證一下表單提交,表單中必須帶有token 提交表單按鈕的名稱 是否驗(yàn)證一個(gè)get請求 random($length, $numeric = FALSE) //獲取一個(gè)隨機(jī)數(shù) 要獲取隨機(jī)數(shù)的長度 是否是純數(shù)字隨機(jī)數(shù) checkcaptcha($code) //驗(yàn)證用戶提交的驗(yàn)證碼是否正確 用戶填寫的驗(yàn)證碼 tablename($tablename) //微擎所有數(shù)據(jù)表均有前綴,此函數(shù)就是返回加表前綴的表名 數(shù)據(jù)表名array_elements($keys, $src) //從一個(gè)數(shù)組中取得若干元素 需要篩選的鍵名列表(數(shù)組) 進(jìn)行篩選的數(shù)組 range_limit($num, $downline, $upline, $returnNear = true) //判斷給定參數(shù)是否位于區(qū)間內(nèi)或?qū)?shù)轉(zhuǎn)換為區(qū)間內(nèi)的數(shù) 檢測的數(shù) 區(qū)間的最小值 區(qū)間的最大值 為true時(shí)小于區(qū)間則返回最小值,大于區(qū)間則返回最大值,否則返回本身的值 ijson_encode($value, $options = 0) //轉(zhuǎn)換json格式 需要轉(zhuǎn)化的字符串/數(shù)組 此值為 JSON_UNESCAPED_UNICODE 時(shí),則不轉(zhuǎn)義中文 iserializer($str) //序列化格式 需要序列化的字符串或數(shù)組is_serialized($str, $strict = TRUE) //判斷是否序列化 需要檢測的數(shù)據(jù) 是否為嚴(yán)格模式 iunserializer($str) //反序列化格式 需要反序列化的字符串或數(shù)組 is_base64($str) //判斷是否為base64加密的字符串 需要檢測的數(shù)據(jù) tomedia($src) //轉(zhuǎn)化地址? 需要進(jìn)行轉(zhuǎn)換的路徑 mages/noavatar_middle.gif referer($default = '') //獲取引用頁的地址 默認(rèn)引用頁地址 strexists($string, $find) //判斷字符串是否包含字串 字符串 需要查找的字符串 cutstr($string, $length, $havedot = false, $charset = '') //截取字符串 字符串 截取的長度 超長字符串結(jié)尾是否加省略號(hào) 指定編碼 istrlen($string, $charset = '') //忽略字符編碼獲取字符串的個(gè)數(shù),中文英文皆為1個(gè)字符 字符串 指定編碼 authcode($string, $operation = 'DECODE', $key = '', $expiry = 0) //字符串加密或解密 字符串 操作DECODE或ENCODE 秘鑰 過期時(shí)間 isimplexml_load_string($string, $class_name = 'SimpleXMLElement', $options = 0, $ns = '', $is_prefix = false) //將一個(gè) xml 字符串轉(zhuǎn)化為 xml 對象 xml字符串 'impleXMLElement' LIBXML_NOCDATA parse_path($path) //過濾路徑中可能包含的非法字符,建議通過get或是post傳遞的路徑皆用此函數(shù)過濾 路徑http 函數(shù)

http函數(shù)使用時(shí) load()->func('communication') 引用ihttp_request($url, $post = '', $extra = array(), $timeout = 60) //模擬http請求 要獲取內(nèi)容的url 數(shù)據(jù)(數(shù)組) 請求附加值 超時(shí)時(shí)間 //詳情看手冊 ihttp_get($url) //GET 請求方法 要獲取內(nèi)容的URL,必須是以http或是https開頭 ihttp_post($url, $data) //POST 請求方法 要獲取內(nèi)容的url 數(shù)據(jù)(數(shù)組) ihttp_email($to, $subject, $body, $global = false) //發(fā)送郵件 Email 收件人郵箱 郵件主題 郵件內(nèi)容數(shù)組格式 是否使用系統(tǒng)郵箱配置信息 //具體手冊操作文件函數(shù)

操作文件時(shí)候 引用 load()->func('file')file_is_image($url) //檢測是否為圖像文件 路徑 //自我感覺 文件操作函數(shù)不是很常用 //需要的話直接看 http://s.w7.cc/index.php?c=wiki&do=view&id=1&list=249

全局變量

微擎有 二個(gè)全局變量 $_W $ _GPC

$_GPC

全局請求變量, 獲取 $GET, $POST, $_COOKIES 中的變量

$_W

$_W 中 是系統(tǒng)中最為重要的全局變量,微擎系統(tǒng)中很多常用的數(shù)據(jù)都存儲(chǔ)在這個(gè)變量之中

這邊記錄一些常用的 $_W 里的用法

$_W[‘timestamp’] //當(dāng)前時(shí)刻的時(shí)間戳$_W[‘clientip’] //當(dāng)前客戶端ip$_W[‘siteroot’] //網(wǎng)站的跟路徑$_W[‘isajax’] //是否是ajax請求$_W[‘ispost’] //是否是post請求$_W[‘ishttps’] //是否是https協(xié)議Web 端可見 $_W[‘uid’] //當(dāng)前登錄的操作用戶 uid $_W[‘username’] //當(dāng)前操作用戶名稱 $_W[‘user’] //當(dāng)前操作用戶信息App 端可見 $_W[‘member’] //當(dāng)前粉絲用戶信息 $_W[‘member’][‘uid’] //當(dāng)前粉絲用戶 uid $_W[‘openid’] //當(dāng)前粉絲用戶標(biāo)識(shí) $_W[‘fans’] //當(dāng)前粉絲用戶信息 但在使用$_W['fans']時(shí),沒有關(guān)注的用戶是無法獲取到$_W['fans']里的信息的

緩存機(jī)制

cache_write(string $key, mixed $data) //按照指定的鍵名存儲(chǔ)緩存數(shù)據(jù) 參數(shù)指定要存儲(chǔ)緩存數(shù)據(jù)的鍵名,鍵名必須保證是唯一 數(shù)據(jù)的內(nèi)容,可以為字符串,數(shù)組等 cache_load(string $key) //讀取指定鍵名緩存數(shù)據(jù) 鍵名 cache_delete(string $key) //刪除指定鍵名的緩存數(shù)據(jù) 鍵名?cache_clean() //清除所有緩存

文件加載器

load()->func(string $string) //加載系統(tǒng)公共函數(shù)// framework/function/logging.func.php load()->func('logging'); load()->classs(string $string) //加載系統(tǒng)公共類 可以自己封裝class// framework/class/account.class.php load()->classs('account');

對接微信的sdk

文檔中需要 一些復(fù)雜的數(shù)據(jù) 如 appid 什么的,

微擎封裝的

$account_api=WeAccount::create();$jssdk=$account_api->getJssdkConfig(); //這樣$jssdk中就有了我們需要 鏈接jssdk的所有數(shù)據(jù)include $this->tempalte('index') //模板中可以直接使用

微擎的語音信息響應(yīng)

在微擎中配置 非關(guān)鍵字響應(yīng)

觸發(fā)模塊

觸發(fā)模塊后site同級文件中,processor.php 文件,如

class Viva_csModuleProcessor extends WeModuleProcessor { //Viva_cs是模塊 public function respond() { $content = $this->message; //信息數(shù)據(jù) (數(shù)組) //$json=json_encode($content,JSON_UNESCAPED_UNICODE); return $this->respText($content['recognition']); //必須要這樣響應(yīng) //這里定義此模塊進(jìn)行消息處理時(shí)的具體過程, 請查看微擎文檔來編寫你的代碼 }}


微擎封裝自定義分享

在這個(gè)公共模板地方創(chuàng)建這個(gè)文件 下面是html的內(nèi)容

<script src="//res.wx.qq.com/open/js/jweixin-1.4.0.js"></script><script>jssdkconfig = {php echo json_encode($_W['account']['jssdkconfig']);} || {}; jssdkconfig.debug = 0; jssdkconfig.jsApiList = ['checkJsApi','onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','hideMenuItems','showMenuItems','hideAllNonBaseMenuItem','showAllNonBaseMenuItem','translateVoice','startRecord','stopRecord','onRecordEnd','playVoice','pauseVoice','stopVoice','uploadVoice','downloadVoice','chooseImage','previewImage','uploadImage','downloadImage','getNetworkType','openLocation','getLocation','hideOptionMenu','showOptionMenu','closeWindow','scanQRCode','chooseWXPay','openProductSpecificView','addCard','chooseCard','openCard','updateAppMessageShareData','updateTimelineShareData'];wx.config(jssdkconfig);wx.ready(function(){wx.hideMenuItems({menuList:['menuItem:copyUrl','menuItem:openWithQQBrowser','menuItem:openWithSafari','menuItem:share:email']});});</script>這個(gè)是視圖中使用自定義分享的時(shí)候 引用這個(gè)模板后,可以使用微信sdk中的方法

下面是內(nèi)容

{template "common/wxsdknew"}<script>wx.ready(function() { //封裝了微信wxsdk可以調(diào)用微信方法 window.wxshare = { title: "你好e貸暖心福利來襲——安心宅家,新鮮直達(dá)!", link: "{$_W['siteurl']}", desc: '超多驚喜等你來', imgUrl: 'https://file.cdn.finance.vivatech.cn/191213helloe_dai/images/index/icon.jpg', success: function () {} }; wx.onMenuShareTimeline(wxshare); wx.onMenuShareAppMessage(wxshare); wx.updateAppMessageShareData(wxshare); wx.updateTimelineShareData(wxshare);});

關(guān)鍵詞:定義

74
73
25
news
  • 網(wǎng)站
  • 營銷
  • 設(shè)計(jì)
  • 運(yùn)營
  • 優(yōu)化
  • 效率
  • 專注
  • 電商
  • 方案
  • 推廣
為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉