1.根目錄下的ThinkPHP\Library\Com文件夾中的WechatAuth.class.php文件中沒有預覽群發接口的方法,首先打開這個文件,添加這個方法:
~~~
/*
*預覽群發接口
*/
public function meassageMass($msgtype,$openid,$content){
$data=array(
'touser'=>$openid,
$msgtype=>array("content"=>$content),
'msgtype'=>$msgtype
);
//echo json_encode($data);
//exit;
return $this->api("message/mass/preview",$data);
}
~~~

2.根目錄下的/Application/Home/Controller文件夾中的MassController.class.php文件,書寫代碼為:
~~~
<?php
namespace Home\Controller;
use Think\Controller;
use Com\Wechat;
use Com\WechatAuth;
class MassController extends Controller
{
private $appid="wx165112bf167af76c";
private $appSecret="c65b22bfcf03fdd98504eac299701b03";
private $WechatAuth="";//初始化WechatAuth類
private $access_token="";//緩存token
public function __construct(){
parent::__construct();//可能內部已經有這個構造方法了,因此加上這個
if(!session('token')){
$this->WechatAuth=new WechatAuth($this->appid,$this->appSecret);//初始化WechatAuth類
$WechatAuth=$this->WechatAuth;
$token=$WechatAuth->getAccessToken();
session(array('expire'=>$token['expires_in']));//設置過期時間
session('token',$token['access_token']);//緩存token
$this->access_token=$token;
}else{
$token=session('token');
$this->WechatAuth=new WechatAuth($this->appid,$this->appSecret,$token);//初始化WechatAuth類
$this->access_token=$token;//緩存token
}
}
//預覽群發消息
public function send(){
header('Content-type:text/html;charset=utf-8;');
$WechatAuth=$this->WechatAuth;
$msgtype="text";
$openid="orVDLwCI0NcQk0skZPNrfZkaj-aE";//暫時直接從數據庫中復制的openid
$content="你好,我在預覽群發消息";
$arr=$WechatAuth->meassageMass($msgtype,$openid,$content);
var_dump($arr);
}
}
~~~
3.注意點

4.在微信web開發者工具上測試結果為

5.在微信客戶端的公眾號里查看是否群發了消息

6.本節源碼下載(下載密碼:mjol)
[源碼下載](https://pan.baidu.com/s/1KZD1CJUE73jTq4mCFMsY2A)