在PHP中实现微信公众号新用户自动欢迎消息发送

2023-05-14 21:05:46 发送 新用户 公众

在今天的社交媒体时代,微信公众号已成为许多企业和个人建立在线品牌和社交媒体营销的重要手段。对于一个新用户来说,第一次关注公众号是一个重要的节点,也是建立一个良好关系的最佳时机。在这个时候,自动发送欢迎消息是十分重要的。在PHP中,通过一些简单的代码实现自动发送欢迎消息并不难,下面我们来介绍一下步骤。

第一步,获取用户关注事件

在微信公众号中,用户关注公众号后公众号会收到一条关注事件,我们需要编写一个代码,来获取这条关注信息。在php中,可以通过以下代码获取用户关注事件:

$postStr = $GLOBALS["Http_RAW_POST_DATA"];
if (!empty($postStr)){
    $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
    $fromUsername = $postObj->FromUserName;//用户openid
    $toUsername = $postObj->ToUserName;
    $event = $postObj->Event;//事件类型
    $time = time();
    if($event == "subscribe"){
        // 欢迎消息处理逻辑
    }
}

第二步,编写欢迎消息处理逻辑

通过上一步获取到用户关注事件后,我们需要编写欢迎消息处理逻辑。在PHP中,我们可以通过以下代码构建一条欢迎消息:

$welcomeMsg = "感谢关注我们的公众号,我们将会为您提供最全面的资讯和最贴心的服务。";

第三步,发送欢迎消息

发送欢迎消息的主要代码如下:

$url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=" . $accessToken;
$data = '{
    "touser":"' . $fromUsername . '",
    "msgtype":"text",
    "text":
    {
         "content":"' . $welcomeMsg . '"
    }
}';
$result = postOpenSSL($url, $data);//post请求发送数据,调用定义好的函数postOpenSSL()

其中,$accessToken是需要获取的access_token,可以通过以下代码获取:

$accessTokenUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . $appId . "&secret=" . $appSecret;
$accessTokenData = httpsRequest($accessTokenUrl);
$accessToken = JSON_decode($accessTokenData, true)["access_token"];

在发送消息前,我们需要定义一个postOpenSSL()函数,用于发送HTTPS请求。

function postOpenSSL($url, $data){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL, $url);
    $headerArr = array('Content-Type: application/json', 'Content-Length: ' . strlen($data));
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headerArr);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

在这里,我们使用了curl来发送HTTPS请求,并设置了请求头和请求数据,同时注意关闭SSL证书的验证。

最后,通过以上步骤,我们就成功地在PHP中实现了微信公众号新用户自动欢迎消息的发送功能。

以上就是在PHP中实现微信公众号新用户自动欢迎消息发送的详细内容,更多请关注其它相关文章!

相关文章