您的位置 首页 技术

yii2中如何自定义公共类

以微信企业号为例: 1、在YII根目录新建一个文件夹wechat,新建Wechat.php文件 代码如下: <? namespace app\wechat;class Wec…

以微信企业号为例:

1、在YII根目录新建一个文件夹wechat,新建Wechat.php文件

代码如下:

<? namespace app\wechat;class Wechat{const AGENTID = 3;//应用IDconst CORPID = "wx5d0183ad90c95d8b";//IDconst CORPSECRET = "KTHAkkVl4mX4Jr_g89d3PXajYupsUcJFvGWQ1K6ZMagTPOh4kiNMfBLFoDr12DVh";//秘钥const SCOPE = "snsapi_base"; const STATE = "123";  //自动登录跳转public function wxauto($jumpurl){$corpid = self::CORPID; $scope = self::SCOPE; $state = self::STATE;  $url='https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$corpid.'&redirect_uri='.urlencode($jumpurl).'&response_type=code&scope='.$scope.'&state='.$state.'#wechat_redirect';header("Location:".$url);exit;}//推送信息public function getPush($userid , $agentid , $message){$userinfo = $this->getToken();//获取access_token$access_token = $userinfo['access_token'];$sendmsg_url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=".$access_token;$data="{\"touser\":\"$userid\",\"msgtype\":\"text\",\"agentid\":$agentid,\"text\":{\"content\":\"$message\"},\"safe\":0}";$res = $this->curlPost($sendmsg_url,$data);$errmsg=json_decode($res)->errmsg;}//获取tokenpublic function getToken(){$corpid = self::CORPID; $corpsecret = self::CORPSECRET; $Url="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=".$corpid."&corpsecret=".$corpsecret;$res = $this->curlPost($Url);$access_token=json_decode($res)->access_token;$userinfo = array();$userinfo['access_token']=$access_token;return $userinfo;}//定义curl方法public function curlPost($url,$data=""){$ch = curl_init();$opt = array(CURLOPT_URL     => $url,CURLOPT_HEADER  => 0,CURLOPT_POST    => 1,CURLOPT_POSTFIELDS      => $data,CURLOPT_RETURNTRANSFER  => 1,CURLOPT_TIMEOUT         => 20);$ssl = substr($url,0,8) == "https://" ? TRUE : FALSE;if ($ssl){$opt[CURLOPT_SSL_VERIFYHOST] = 2; //注意1已经弃用$opt[CURLOPT_SSL_VERIFYPEER] = FALSE;}curl_setopt_array($ch,$opt);$data = curl_exec($ch);curl_close($ch);return $data;}###########**********增加获取微信openid***********#########################}?>

2、控制器的调用:

引入 use app\wechat\Wechat;

$chat = new Wechat();  //实例化类$REDIRECT_URI= $_SERVER['HTTP_HOST'].'/test/back';//定义跳转URL$chat->wxauto($REDIRECT_URI);//调用类的方法        $chat->getToken();//调用类的方法 $corpid = Wechat::CORPID;//调用类的常量$corpsecret = Wechat::CORPSECRET;//调用类的常量$agentid=Wechat::AGENTID;//调用类的常量

相关文章教程推荐:yii教程

以上就是yii2中如何自定义公共类的详细内容,更多请关注24课堂在线网其它相关文章!

本文来自网络,不代表24小时课堂在线立场,转载请注明出处:https://www.24ketang.cn/24239.html

为您推荐

返回顶部