文档章节

THINKPHP 使用自定义标签加载微信jssdk

OLDBIN
 OLDBIN
发布于 2016/12/10 22:05
字数 696
阅读 18
收藏 1

开始之前:

请自行在微信公众号平台绑定js安全域名 

PS:每月只可以修改3次!

白俊遥博客

 

1、 把WechatJsSdk.class.php 放置在 根目录ThinkPHP\Library\Vendor\Weixin\

 

weixin 文件夹没有的话手动创建, WechatJsSdk.class.php 文件在文章下面提供下载。

 

2.打开 Common\Conf\config.php文件 

 

添加以下代码:

 

1

'TAGLIB_BUILD_IN'       =>  'Cx,Common\Tag\Weixin',           //加载自定义标签

 

3、在Common文件夹新建 Tag 文件夹

 

4、Tag 文件夹新建PHP 文件 Weixin.class.php 

 

5、Weixin.class.php 代码内容:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

<?php

/**

 @Author: old-bin

 @Date:   2016-12-08 05:01:42

 @Last Modified by:   old-bin

 @Last Modified time: 2016-12-08 06:09:30

 */

namespace Common\Tag;

use Think\Template\TagLib;

 

class Weixin extends TagLib{

 

    protected $tags array(

             

            'wxjsdk'=>array('attr'=>'','close'=>0),

        );

 

 

 

        /**

    * wxjsdk部分

    */

    public function _wxjsdk(){

         

        $appId '*****'// appid

        $AppSecret 'GGGG';//AppSecret

     

         import('Vendor.Weixin.WechatJsSdk'); //引入微信jssdk class

         $jssdk new \JSSDK($appId$AppSecret);

         $signPackage $jssdk->GetSignPackage();

         

        $link=<<<php

        <script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.1.0.js"></script>

 

        <script type="text/javascript">

            wx.config({

            debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。

            appId:  '{$signPackage["appId"]}',

            timestamp:'{$signPackage["timestamp"]}',

            nonceStr:'{$signPackage["nonceStr"]}',

            signature:'{$signPackage["signature"]}',

            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'

            // 必填,需要使用的JS接口列表,所有JS接口列表见附录2

        });

        </script>

php;

        return $link;

    }

 

     

 

}

 

6、然后你就可以随意调用啦~~

 

调用方式:

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

<!-- //微信JsSdk -->

<wxjsdk/>

 

<script type="text/javascript">

     

      wx.ready(function () {

        // 分享到朋友圈

       wx.onMenuShareTimeline({

            title: '', // 分享标题

            link: '', // 分享链接

            imgUrl: '', // 分享图标

            success: function () { 

                // 用户确认分享后执行的回调函数

            },

            cancel: function () { 

                // 用户取消分享后执行的回调函数

            }

        });

 

       //分享给好友

       wx.onMenuShareAppMessage({

            title: '', // 分享标题

            desc: '', // 分享描述

            link: '', // 分享链接

            imgUrl: '', // 分享图标

            type: 'link', // 分享类型,music、video或link,不填默认为link

            dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空

            success: function () { 

                // 用户确认分享后执行的回调函数

            },

            cancel: function () { 

                // 用户取消分享后执行的回调函数

            }

        });

  });

     

    </script>

<!-- //微信JsSdk end -->

 

 

调用结果:

白俊遥博客

白俊遥博客

白俊遥博客

白俊遥博客

 

 

附件下载:
WechatJsSdk.class.php 

原文链接:

THINKPHP 使用自定义标签加载微信jssdk

  •  

原文链接:OLD-BIN

 

© 著作权归作者所有

共有 人打赏支持
OLDBIN
粉丝 0
博文 3
码字总数 1420
作品 0
梅州
私信 提问
PHP学习路线图 最全PHP自学指南

对于广大零基础的PHP自学者,往往不知道如何系统的学习PHP,导致平白浪费了很多时间。本文将为大家带来最详细的php学习路线图,同时还会附上相应的权威教程,让广大PHP自学者少走许多弯路。 ...

W3Cschool小编
04/24
0
0
用thinkphp进行微信开发的整体设计思考

用thinkphp进行微信开发的整体设计思考 http://www.2cto.com/weixin/201504/388423.html 2015-04-09 0 个评论 作者:明之暗夜 收藏 我要投稿 因为项目中很多地方都涉及到微信接口的调用 比如...

thinkyoung
2015/09/25
0
0
ThinkPHP 查询数据 select(findAll) 方法

ThinkPHP 查询数据 ThinkPHP 查询数据主要提供以下几类查询: select:普通查询,同 findAll() 方法 find:取得符合查询条件的一条记录 getBy动态查询:根据某个字段取得符合查询条件的一条记...

WangEven
2012/05/10
0
0
适合PHP新手入门上手的开发框架-thinkphp

ThinkPHP是一个开源的PHP框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。早期的思想...

big_cat
2013/06/15
0
0
「ThinkPHP开发者周刊」第4期——日志、调试和通知

[ 本周读数 ] ——官方扩展数量已经超过个 ThinkPHP版本开始,官方的扩展全部通过安装,目前官方维护以及参与的扩展已经超过36个,并且都已经支持最新的版本,涵盖和满足了主流的现代化开发需...

流年
11/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Linux学习-1031(rsync同步工具 上)

10.28 rsync工具介绍 10.29/10.30 rsync常用选项 10.31 rsync通过ssh同步 一、 rsync工具介绍 rsync是一个同步工具,在日常的运维中常会用到。它可以本地同步,也实现可以远程两台机器同步。...

wxy丶
3分钟前
0
0
python实战一期:第一天

1. 为什么学习python 1.1 为什么要学Python? Python第一是个非常牛B的脚本语言,能满足绝大部分自动化运维的需求,又能做后端C/S架构,又能用WEB框架快速开发出高大上的Web界面,只有当你自...

laoba
5分钟前
0
0
Java并发编程学习三:线程同步的关键字以及理解

上篇文章中介绍了Java线程的带来的问题与内存模型中介绍了线程可能会引发的问题以及对应Java的内存模型,顺带介绍了Volatile和Sychronized关键字。今天对Java中涉及到的常见的关键类和关键字...

JerryLin123
12分钟前
0
0
我用代码来给你们分析一个赚钱的技巧

赚钱是个俗气的话题,但又是人人都绕不开的事情。我今天来“科学”地触碰下这个话题。 谈赚钱,就会谈到理财、投资,谈到炒股。有这样一个笑话: 问:如何成为百万富翁? 答:带一千万进入股...

crossin
12分钟前
0
0
spring MatchingBean应用

1、编写接口FactoryList import java.util.List;public interface FactoryList<E extends MatchingBean<K>, K> extends List<E> { E getBean(K factor); List<E> getBeanLi......

重城重楼
25分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部