>  기사  >  백엔드 개발  >  PHP는 WeChat 미니 프로그램에서 라벨링 기술을 구현합니다.

PHP는 WeChat 미니 프로그램에서 라벨링 기술을 구현합니다.

WBOY
WBOY원래의
2023-06-01 09:01:521302검색

WeChat 미니 프로그램의 인기에 따라 이를 홍보 및 마케팅 채널로 활용하는 기업이 점점 늘어나고 있습니다. 미니 프로그램의 일상적인 작업에서는 더 정확하고 정확한 푸시 및 관리를 위해 다양한 사용자에게 라벨을 지정해야 하는 경우가 많습니다. 미니 프로그램에서 라벨링 기능을 구현하는 방법은 운영자가 숙달해야 하는 기술입니다.

이 기사에서는 레이블이 필요한 미니 프로그램 운영자에게 도움이 되기를 바라며 PHP를 사용하여 WeChat 미니 프로그램에서 레이블 지정을 구현하는 몇 가지 기술을 공유합니다.

  1. Get Mini Program Access Token

WeChat API를 사용할 때 인터페이스 데이터를 얻으려면 먼저 액세스 토큰을 얻어야 합니다. 미니 프로그램에서 Access Token을 얻기 위한 API 인터페이스는 다음과 같습니다.

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

그 중 APPID와 APPSECRET을 자신의 미니 프로그램의 AppId와 AppSecret으로 바꿔야 합니다.

다음 코드를 사용하여 PHP에서 액세스 토큰을 얻을 수 있습니다.

$appid = 'your_appid';//小程序的appid
$secret = 'your_secret';//小程序的secret
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret={$secret}";
$res = file_get_contents($url);
$res = json_decode($res, true);
$access_token = $res['access_token'];
  1. 사용자의 OpenID 가져오기

사용자를 태그하기 전에 태그 작업을 위해 WeChat API를 호출하려면 사용자의 OpenID를 가져와야 합니다. 미니 프로그램에서 사용자의 OpenID를 얻기 위한 API 인터페이스는 다음과 같습니다.

https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

그 중 JSCODE는 wx.login()을 호출하는 미니 프로그램에서 반환되는 코드입니다. PHP에서는 다음 코드를 사용하여 사용자의 OpenID를 얻을 수 있습니다.

$appid = 'your_appid';//小程序的appid
$secret = 'your_secret';//小程序的secret
$js_code = $_GET['code'];//小程序登录时获取的code
$url = "https://api.weixin.qq.com/sns/jscode2session?appid={$appid}&secret={$secret}&js_code={$js_code}&grant_type=authorization_code";
$res = file_get_contents($url);
$res = json_decode($res, true);
$openid = $res['openid'];
  1. 사용자 태그

사용자의 OpenID를 얻은 후 WeChat API를 호출하여 사용자를 태그할 수 있습니다. 미니 프로그램에서 사용자를 태그하기 위한 API 인터페이스는 다음과 같습니다.

https://api.weixin.qq.com/cgi-bin/tags/members/batchtagging?access_token=ACCESS_TOKEN

그 중 ACCESS_TOKEN은 1단계에서 얻은 Access Token입니다. PHP에서는 다음 코드를 사용하여 사용자를 태그할 수 있습니다.

$tags = array(101, 102);//需要打标签的标签 ID
$data = array(
    'openid_list' => array($openid),//用户的openid列表
    'tagid_list' => $tags,//标签 ID 列表
);
$json = json_encode($data);
$url = "https://api.weixin.qq.com/cgi-bin/tags/members/batchtagging?access_token={$access_token}";
$res = http_request($url, $json);//调用自定义方法 http_request()
$res = json_decode($res, true);
if ($res['errcode'] == 0) {//打标签成功
    echo '打标签成功!';
} else {//打标签失败
    echo '打标签失败!';
}

//自定义方法 http_request()
function http_request($url, $data = null)
{
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
    if (!empty($data)) {
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
    }
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($curl);
    curl_close($curl);
    return $output;
}

위는 PHP를 사용하여 WeChat 애플릿을 구현하는 태그 지정 기술입니다. WeChat API를 호출할 때 액세스 토큰이 있는지 확인해야 합니다. 그렇지 않으면 "액세스 거부" 오류가 나타납니다. 액세스 토큰이 만료되면 인터페이스를 다시 호출하여 업데이트할 액세스 토큰을 얻을 수 있습니다.

위 내용은 PHP는 WeChat 미니 프로그램에서 라벨링 기술을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.