在model里新建CustomServiceModel 為微信接口
<?php namespace Home\Model; use Think\Model; class CustomServiceModel extends Model { // protected $tableName = 'wxmenu_statistics'; private static $wxInterFace; public function Service($uid,$json){ $Model = D('Token'); $access_token = $Model->getToken(); $url = 'https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token='.$access_token; $this->getHttpResponsePOST($url,$json); } //獲取微信憑證 ACCESS_TOKEN public function getACCESS_TOKEN($uid){ $interface = M('wxinterface','wxmenu'); $data = $interface->getInterfacebyUid($uid); $AppId = $data[0]['AppId']; $AppSecret = $data[0]['AppSecret']; $ctime = $data[0]['ctime']; if(time()-$ctime<7200){ $ACCESS_TOKEN = $data[0]['token']; }else{ $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$AppId."&secret=".$AppSecret; $info = $interface->getHttpResponseGET($url); $arr = json_decode($info,$assoc=true); $ACCESS_TOKEN = $arr['access_token']; $data[0]['token'] = $ACCESS_TOKEN; $data[0]['ctime'] = time(); $interface->save($data[0]); } return $ACCESS_TOKEN; } /** 遠程獲取數(shù)據(jù),GET模式 * 注意: * 1.使用Crul需要修改服務(wù)器中php.ini文件的設(shè)置,找到php_curl.dll去掉前面的";"就行了 * 2.文件夾中cacert.pem是SSL證書請保證其路徑有效,目前默認路徑是:getcwd().'\\cacert.pem' * @param $url 指定URL完整路徑地址 * @param $cacert_url 指定當前工作目錄絕對路徑 * return 遠程輸出的數(shù)據(jù) */ public function getHttpResponseGET($url) { $curl = curl_init($url); //curl_setopt($curl, CURLOPT_URL, $url); //curl_setopt($curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, CURL_SSLVERSION_TLSv1);//SSL證書認證 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);//不認證 curl_setopt($curl, CURLOPT_HEADER, 0 ); // 過濾HTTP頭 curl_setopt($curl,CURLOPT_RETURNTRANSFER, 1);// 顯示輸出結(jié)果 $responseText = curl_exec($curl); //var_dump( curl_error($curl) );//如果執(zhí)行curl過程中出現(xiàn)異常,可打開此開關(guān),以便查看異常內(nèi)容 curl_close($curl); return $responseText; } /** * 遠程獲取數(shù)據(jù),POST模式 * 注意: * 1.使用Crul需要修改服務(wù)器中php.ini文件的設(shè)置,找到php_curl.dll去掉前面的";"就行了 * 2.文件夾中cacert.pem是SSL證書請保證其路徑有效,目前默認路徑是:getcwd().'\\cacert.pem' * @param $url 指定URL完整路徑地址 * @param $cacert_url 指定當前工作目錄絕對路徑 * @param $para 請求的數(shù)據(jù) * @param $input_charset 編碼格式。默認值:空值 * return 遠程輸出的數(shù)據(jù) */ function getHttpResponsePOST($url, $para, $input_charset = '') { if (trim($input_charset) != '') { $url = $url."_input_charset=".$input_charset; } $curl = curl_init($url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, CURL_SSLVERSION_TLSv1);//SSL證書認證 //curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//SSL證書認證 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);//嚴格認證 curl_setopt($curl, CURLOPT_HEADER, 0 ); // 過濾HTTP頭 curl_setopt($curl,CURLOPT_RETURNTRANSFER, 1);// 顯示輸出結(jié)果 curl_setopt($curl,CURLOPT_POST,true); // post傳輸數(shù)據(jù) curl_setopt($curl,CURLOPT_POSTFIELDS,$para);// post傳輸數(shù)據(jù) $responseText = curl_exec($curl); //var_dump( curl_error($curl) );//如果執(zhí)行curl過程中出現(xiàn)異常,可打開此開關(guān),以便查看異常內(nèi)容 curl_close($curl); return $responseText; } } ?> //---TOkenmodel 獲取token <?php namespace Home\Model; use Think\Model; class TokenModel extends Model{ public function getToken(){ $data['uid']=330; $arr = $this->table('wxm_wxmenu_interface')->where($data)->find(); //file_put_contents("g.txt",$arr['token'],FILE_APPEND); return $arr['token']; } public function setToken($token){ $to['token']=$token; $arr= $this->table('wxm_wxmenu_interface')->where('uid=330')->save($to); //file_put_contents("s.txt",$token,FILE_APPEND); return true; } } ?> //---然后在需要使用的action里面新增方法 //文本回復 public function msgReturn($openid,$array){ $json = '{ "touser":"'.strval($openid).'", "msgtype":"text", "text": { "content":"'.$array['content'].'" } }'; //調(diào)用客服接口 $uid=330; D("CustomService")->Service($uid,$json); } //最后在需要使用的地方調(diào)用此接口 //修改未審核狀態(tài) //-----趙信------// public function modn(){ $data['xid']=$_GET['xid']; $data['bstate']=$_GET['bstate']; $data['update_time'] = time(); $customer=M("Customer"); $member = M('members'); $cus = $customer->where('xid='.$data['xid'])->find(); $m_data = $member->where('oid='.$cus['oid'])->find(); $c=$customer->save($data); if($c){ if($data['bstate']==5){ $array['content'] ="您推薦的客戶“".$cus['xname']."”已被確認審核通過"; $this->msgReturn($m_data['openid'], $array); }else if($data['bstate']==3){ $array['content'] ="您推薦的客戶“".$cus['xname']."”已被確認已被推薦"; $this->msgReturn($m_data['openid'], $array); }else if($data['bstate']==4){ $array['content'] ="您推薦的客戶“".$cus['xname']."”已被確認為已成交客戶"; $this->msgReturn($m_data['openid'], $array); } } $this->redirect("success_customer"); }
?以上就是微信通過某個事件推送消息的內(nèi)容,更多相關(guān)內(nèi)容請關(guān)注PHP中文網(wǎng)(www.miracleart.cn)!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Troubleshooting and solutions to the company's security software that causes some applications to not function properly. Many companies will deploy security software in order to ensure internal network security. ...

H5. The main difference between mini programs and APP is: technical architecture: H5 is based on web technology, and mini programs and APP are independent applications. Experience and functions: H5 is light and easy to use, with limited functions; mini programs are lightweight and have good interactiveness; APPs are powerful and have smooth experience. Compatibility: H5 is cross-platform compatible, applets and APPs are restricted by the platform. Development cost: H5 has low development cost, medium mini programs, and highest APP. Applicable scenarios: H5 is suitable for information display, applets are suitable for lightweight applications, and APPs are suitable for complex functions.

H5 development tools recommendations: VSCode, WebStorm, Atom, Brackets, Sublime Text; Mini Program Development Tools: WeChat Developer Tools, Alipay Mini Program Developer Tools, Baidu Smart Mini Program IDE, Toutiao Mini Program Developer Tools, Taro.

The choice of H5 and applet depends on the requirements. For applications with cross-platform, rapid development and high scalability, choose H5; for applications with native experience, rich functions and platform dependencies, choose applets.

There are differences in the promotion methods of H5 and mini programs: platform dependence: H5 depends on the browser, and mini programs rely on specific platforms (such as WeChat). User experience: The H5 experience is poor, and the mini program provides a smooth experience similar to native applications. Communication method: H5 is spread through links, and mini programs are shared or searched through the platform. H5 promotion methods: social sharing, email marketing, QR code, SEO, paid advertising. Mini program promotion methods: platform promotion, social sharing, offline promotion, ASO, cooperation with other platforms.

The best cryptocurrency trading and analysis platforms include: 1. OKX: the world's number one in trading volume, supports multiple transactions, provides AI market analysis and on-chain data monitoring. 2. Binance: The world's largest exchange, providing in-depth market conditions and new currency first-time offerings. 3. Sesame Open Door: Known for spot trading and OTC channels, it provides automated trading strategies. 4. CoinMarketCap: an authoritative market data platform, covering 20,000 currencies. 5. CoinGecko: Known for community sentiment analysis, it provides DeFi and NFT trend monitoring. 6. Non-small account: a domestic market platform, providing analysis of linkage between A-shares and currency markets. 7. On-chain Finance: Focus on blockchain news and update in-depth reports every day. 8. Golden Finance: 24 small

The login portal for the Douyin web version is https://www.douyin.com/. The login steps include: 1. Open the browser; 2. Enter the URL https://www.douyin.com/; 3. Click the "Login" button and select the login method; 4. Enter the account password; 5. Complete login. The web version provides functions such as browsing, searching, interaction, uploading videos and personal homepage management, and has advantages such as large-screen experience, multi-tasking, convenient account management and data statistics.

10 top scams on cryptocurrency exchanges Common scams: fake exchanges, Ponzi capital trading, contract manipulation, fake coin phishing, customer service fraud, etc. Identification points: Check regulatory licenses, check contract addresses, and be wary of high-yield commitments Must be protected: Use only mainstream exchanges (Binance/Coinbase) Enable hardware wallet Reject share private key/verification code Deal with fraud: take screenshots immediately, freeze assets, report on the platform, and report to the police Core principle: Any request for password/transfer is a fraud!
