thinkPHP微信分享接口JSSDK用法實(shí)例
本文實(shí)例講述了thinkPHP微信分享接口JSSDK用法。分享給大家供大家參考,具體如下:
首先在數(shù)據(jù)庫(kù)中添加access_token表:
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for access_token -- ---------------------------- DROP TABLE IF EXISTS `access_token`; CREATE TABLE `access_token` ( `id` int(11) NOT NULL AUTO_INCREMENT, `access_token` char(64) NOT NULL COMMENT '令牌-唯一標(biāo)識(shí)', `expires_time` varchar(64) DEFAULT NULL COMMENT '過(guò)期時(shí)間', `ticket` char(64) NOT NULL COMMENT '臨時(shí)票據(jù)', `ticket_expires_time` varchar(64) DEFAULT NULL COMMENT '過(guò)期的票據(jù)時(shí)間', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COMMENT='token緩存表';
/** * 添加微信分享接口 * 第一步:access token */ public function getAccessToken(){ $appid = '你的appid'; //獲取用戶唯一憑證 $secret = '你的secret'; //用戶唯一憑證密鑰 $time = time()+7000; //當(dāng)前時(shí)間+2小時(shí)等于過(guò)期時(shí)間 if (!$token) { $res = file_get_contents('https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' .$appid.'&secret='. $secret); $res = json_decode($res, true); $token = $res['access_token']; $model = D('access_token'); //把獲取的token存儲(chǔ)到數(shù)據(jù)庫(kù)中 if($token){ $data = array( 'access_token' => $token, 'expires_time' => $time ); $data = $model->add($data); //把獲得的token存儲(chǔ)到數(shù)據(jù)庫(kù)中 } } return $token; }
/** * 添加微信分享接口 * 第二步:用第一步拿到的access_token 采用http GET方式請(qǐng)求獲得jsapi_ticket */ public function getJsapiTicket(){ $time = time()+7000; //當(dāng)前時(shí)間+2小時(shí)等于過(guò)期時(shí)間 $map['ticket_expires_time'] = array('gt',time()); $res = D('access_token')->where('ticket_expires_time')->field('ticket')->find(); if($res){ $ticket = $res['ticket']; $result['result'] = $ticket; //沒(méi)查詢到符合條件的 jsonpReturn($result); } else{ $token = $this->getAccessToken(); $res = file_get_contents("https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=".$token."&type=jsapi"); $res = json_decode($res, true); $ticket = $res['ticket']; // ticket不能頻繁的訪問(wèn)接口來(lái)獲取,在每次獲取后,我們把它保存到數(shù)據(jù)庫(kù)中。 $model = D('access_token'); //把獲取的ticket存儲(chǔ)到數(shù)據(jù)庫(kù)中 if($ticket){ $data = array( 'access_token' => $token, 'expires_time' => $time, 'ticket' => $ticket, 'ticket_expires_time' => $time ); $data = $model->add($data); //把獲得的token存儲(chǔ)到數(shù)據(jù)庫(kù)中 } $result['result'] = $ticket; //沒(méi)查詢到符合條件的 jsonpReturn($result); } }
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP微信開(kāi)發(fā)技巧匯總》、《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- 微信小程序開(kāi)發(fā)之獲取用戶手機(jī)號(hào)碼(php接口解密)
- ThinkPHP框架實(shí)現(xiàn)的微信支付接口開(kāi)發(fā)完整示例
- php獲取微信基礎(chǔ)接口憑證Access_token
- PHP封裝的微信公眾平臺(tái)接口開(kāi)發(fā)操作類完整示例
- 詳解使用php調(diào)用微信接口上傳永久素材
- PHP實(shí)現(xiàn)微信JS-SDK接口選擇相冊(cè)及拍照并上傳的方法
- php微信高級(jí)接口調(diào)用方法(自定義菜單接口、客服接口、二維碼)
- PHP配合微信小程序?qū)崿F(xiàn)獲取手機(jī)號(hào)碼詳解
- 微信小程序結(jié)合ThinkPHP5授權(quán)登陸后獲取手機(jī)號(hào)
- PHP請(qǐng)求微信接口獲取用戶電話號(hào)功能示例
相關(guān)文章
PHP和MYSQL實(shí)現(xiàn)分頁(yè)導(dǎo)航思路詳解
這篇文章主要介紹了PHP和MYSQL實(shí)現(xiàn)分頁(yè)導(dǎo)航思路詳解,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-04-04laravel validate 設(shè)置為中文的例子(驗(yàn)證提示為中文)
今天小編就為大家分享一篇laravel validate 設(shè)置為中文的例子(驗(yàn)證提示為中文),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09Yii2中多表關(guān)聯(lián)查詢hasOne hasMany的方法
這篇文章主要介紹了Yii2中多表關(guān)聯(lián)查詢hasOne hasMany的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-02-02php結(jié)合js實(shí)現(xiàn)點(diǎn)擊超鏈接執(zhí)行刪除確認(rèn)操作
本文是一篇超級(jí)簡(jiǎn)單的php結(jié)合js實(shí)現(xiàn)點(diǎn)擊超鏈接執(zhí)行js代碼,并確認(rèn)是否刪除數(shù)據(jù)庫(kù)數(shù)據(jù),附上全部源代碼,給需要的朋友參考下吧2014-10-10php實(shí)現(xiàn)對(duì)短信驗(yàn)證碼發(fā)送次數(shù)的限制實(shí)例講解
這篇文章主要介紹了php實(shí)現(xiàn)對(duì)短信驗(yàn)證碼發(fā)送次數(shù)的限制實(shí)例講解,案例中列舉了具體代碼實(shí)現(xiàn),有感興趣的同學(xué)可以學(xué)習(xí)下2021-03-03ThinkPHP后臺(tái)首頁(yè)index使用frameset時(shí)的注意事項(xiàng)分析
這篇文章主要介紹了ThinkPHP后臺(tái)首頁(yè)index使用frameset時(shí)的注意事項(xiàng),需要的朋友可以參考下2014-08-08php支付寶手機(jī)網(wǎng)頁(yè)支付類實(shí)例
這篇文章主要介紹了php支付寶手機(jī)網(wǎng)頁(yè)支付類實(shí)例,是基于Yii框架使用的支付寶接口類文件,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-03-03把1316這個(gè)數(shù)表示成兩個(gè)數(shù)的和,其中一個(gè)為13的倍數(shù),另一個(gè)是11的倍數(shù),求這兩個(gè)數(shù)。
把1316這個(gè)數(shù)表示成兩個(gè)數(shù)的和,其中一個(gè)為13的倍數(shù),另一個(gè)是11的倍數(shù),求這兩個(gè)數(shù)。2011-06-06php中實(shí)現(xiàn)簡(jiǎn)單的ACL 完結(jié)篇
終于寫完了 呵呵 簡(jiǎn)單的一個(gè)實(shí)現(xiàn),學(xué)習(xí)php的朋友可以參考下。2011-09-09