백엔드 개발 PHP 튜토리얼 PHP 사용자 관리에서 일반적으로 사용되는 인터페이스에서 호출되는 메서드

PHP 사용자 관리에서 일반적으로 사용되는 인터페이스에서 호출되는 메서드

May 25, 2018 am 09:37 AM
php 인터페이스 용적

이 글은 주로 PHP 사용자 관리에 있어서 일반적인 인터페이스 호출 방법을 소개합니다. 관심 있는 친구들이 참고하면 좋겠습니다.

사용자를 마스터하기 위한 첫 번째 단계는 팔로우한 팬의 정보를 저장하는 것입니다. 이때 사용자 목록 인터페이스를 사용하게 됩니다. 공개 계정은 이 인터페이스를 통해 계정의 팔로어 목록을 얻을 수 있습니다. 팔로어 목록은 OpenID 문자열로 구성됩니다(암호화된 WeChat ID, 각 공개 계정에 대한 각 사용자의 OpenID는 고유함). 단일 풀 호출로 최대 10,000명의 팔로어 OpenID를 가져올 수 있으며, 필요에 따라 여러 번 가져올 수 있습니다.

1. 다음 사용자 목록 인터페이스 호출 예시

인터페이스 설명

http 요청 방법: GET

인터페이스 호출 주소:

https://api.weixin.qq.com/cgi-bin/user /get?access_token=ACCESS_TOKEN&next_openid=NEXT_OPENID

표에 표시된 대로 요청 매개변수 설명:


매개변수

가 필요합니까?

Description

access_token

호출 인터페이스 자격 증명

next_openid

가져올 첫 번째 OPENID입니다. 채워지지 않으면 가져옵니다. 기본적으로 처음부터

반환 지침:

일반적인 상황에서 WeChat은 아래와 같이 JSON 데이터 패킷을 공식 계정에 반환합니다.

{"total":2,"count":2,"data ":{"openid":["", "OPENID1","OPENID2"]},"next_openid":"NEXT_OPENID"}{"total":2,"count":2,"data":{"openid":["","OPENID1","OPENID2"]},"next_openid":"NEXT_OPENID"}

返回信息参数说明,如表所示:

 

参数

说明

total

关注该公众账号的总用户数

count

拉取的OPENID个数,最大值为10000

data

列表数据,OPENID的列表

next_openid

拉取列表的最后一个用户的OPENID

使用程序调用接口获取,代码:

<?php
/*
 *获取微信关注用户列表OpenID
*/
require(&#39;wei_function.php&#39;);
$appid="wx78478e595939c538";
$secret="5540e8ccab4f71dfad752f73cfb85780";
$url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$secret."";
$output=getdata($url);
$tokenarr=(array)json_decode($output);
$token=$tokenarr[&#39;access_token&#39;];
//获取关注用户列表接口
$userurl="https://api.weixin.qq.com/cgi-bin/user/get?access_token=".$token."";
//通过getdata进行接口调用
$userarr=(array)json_decode(getdata($userurl));
//将返回信息进行处理并输出
$useropenidarr=(array)$userarr[&#39;data&#39;];
print_r($useropenidarr);
?>
로그인 후 복사

代码解析

require('wei_function.php');包含wei_function.php,该函数文件可以购买《微信公众平台开发实例教程》,在该书中第95页有详细讲解。 

与微信公众平台开发3-微信服务器IP接口实例(含源码)的获取微信服务器IP一样,获取到access_token后,替换

$userurl="https://api.weixin.qq.com/cgi-bin/user/get?access_token=".$token."";

표에 표시된 대로 반환 정보 매개변수 설명:

Parameter

Description

total

이 공개 계정을 팔로우하는 총 사용자 수

count

가져오는 최대 OPENID 수는 10000입니다
$userurl="https://api.weixin.qq.com/cgi-bin/user/get?access_token=".$token."&next_openid=NEXT_OPENID";
로그인 후 복사
팔로우 사용자 목록 가져오기 인터페이스를 통해 사용자의 OpenID를 얻은 후 이 매개변수를 사용하고 사용자 기본 정보 가져오기(UnionID 메커니즘) 인터페이스를 호출하여 사용자의 OpenID를 가져올 수 있습니다. 닉네임, 도시, 성별, 사용자 아바타, 공개 계정 팔로우 여부 및 기타 정보와 같은 기본 정보는 사용자를 더 잘 이해하기 위해 데이터베이스에 함께 저장되어야 합니다. 인터페이스 설명

data

목록 데이터, OPENID 목록

next_openid

목록에 있는 마지막 사용자의 OPENID를 가져옵니다

프로그램 호출 인터페이스를 사용하여 , 코드:

코드 분석
require('wei_function.php'); wei_function.php가 포함되어 있습니다. 이 함수 파일은 자세히 설명되어 있는 "WeChat 공개 플랫폼 개발 예제 튜토리얼"에서 구입할 수 있습니다. 책 95쪽.

WeChat 서버 IP를 얻기 위한 WeChat 공개 플랫폼 개발 3-WeChat 서버 IP 인터페이스 인스턴스(소스 코드 포함)와 동일합니다. access_token을 얻은 후
$userurl="https://를 교체합니다. api.weixin.qq.com/cgi-bin/user/get?access_token=".$token."";

의 access_token 매개변수, getdata() 함수를 통해 반환된 정보를 얻습니다. 처리 후 표시된 그림과 같이 인쇄합니다.

10,000명이 넘는 사용자를 팔로우하고 여러 번 호출해야 하는 경우 인터페이스 뒤에 &next_openid=NEXT_OPENID 매개변수를 추가하면 NEXT_OPENID가 이전 호출에서 이 값을 반환합니다. 예:

{
  "subscribe": 1,
  "openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M",
  "nickname": "Band",
  "sex": 1,
  "language": "zh_CN",
  "city": "广州",
  "province": "广东",
  "country": "中国",
  "headimgurl": "http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4
eMsv84eavHiaiceqxibJxCfHe/0",
 "subscribe_time": 1382694957,
 "unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"
 "remark": "",
 "groupid": 0,
 "tagid_list":[128,2]
}
로그인 후 복사
로그인 후 복사

이, 사용자 기본 정보 인터페이스(UnionID 메커니즘) 호출 예제

🎜http 요청 방법: GET🎜🎜인터페이스 호출 주소:🎜🎜https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN🎜🎜요청 매개변수 표에 표시된 설명: 🎜🎜🎜🎜🎜🎜🎜🎜🎜매개변수 🎜🎜🎜🎜가 필수인가요? 🎜is🎜🎜🎜🎜 호출 인터페이스 자격 증명🎜🎜🎜 🎜🎜🎜openid 🎜🎜🎜🎜은(는) 다음의 식별자입니다. 현재 공개 계정에 고유한 일반 사용자 🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜lang🎜🎜🎜🎜No🎜🎜🎜🎜국가 및 지역 언어 버전으로 돌아가기, zh_CN 중국어 간체, zh_TW 중국어 번체, en 영어🎜 🎜🎜🎜🎜

返回说明:

正常情况下,微信会返回JSON数据包给公众号,如下所示:

{
  "subscribe": 1,
  "openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M",
  "nickname": "Band",
  "sex": 1,
  "language": "zh_CN",
  "city": "广州",
  "province": "广东",
  "country": "中国",
  "headimgurl": "http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4
eMsv84eavHiaiceqxibJxCfHe/0",
 "subscribe_time": 1382694957,
 "unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"
 "remark": "",
 "groupid": 0,
 "tagid_list":[128,2]
}
로그인 후 복사
로그인 후 복사

返回信息参数说明,如表所示:


参数

说明

subscribe

用户是否订阅该公众号标识,值为0时,代表此用户没有关注该公众号,拉取不到其余信息。

openid

用户的标识,对当前公众号唯一

nickname

用户的昵称

sex

用户的性别,值为1时是男性,值为2时是女性,值为0时是未知

city

用户所在城市

country

用户所在国家

province

用户所在省份

language

用户的语言,简体中文为zh_CN

headimgurl

用户头像,最后一个数值代表正方形头像大小(有0、46、64、96、132数值可选,0代表640*640正方形头像),用户没有头像时该项为空。若用户更换头像,原有头像URL将失效。

subscribe_time

用户关注时间,为时间戳。如果用户曾多次关注,则取最后关注时间

unionid

只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段。

remark

公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注

groupid

用户所在的分组ID(兼容旧的用户分组接口)

tagid_list

用户被打上的标签ID列表

使用程序调用接口获取,代码:

<?php
/*
 *获取微信关注用户基本信息
*/
require(&#39;wei_function.php&#39;);
$appid="wx78478e595939c538";
$secret="5540e8ccab4f71dfad752f73cfb85780";
$url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$secret."";
$output=getdata($url);
$tokenarr=(array)json_decode($output);
$token=$tokenarr[&#39;access_token&#39;];
//获取关注用户列表接口
$userurl="https://api.weixin.qq.com/cgi-bin/user/get?access_token=".$token."";
//通过getdata进行接口调用
$userarr=(array)json_decode(getdata($userurl));
//将返回信息进行处理并输出
$useropenidarr=(array)$userarr[&#39;data&#39;];
foreach ($useropenidarr[&#39;openid&#39;] as $value) {
  //循环获取用户基本信息
  $infourl="https://api.weixin.qq.com/cgi-bin/user/info?access_token=".$token."&openid=".$value."&lang=zh_CN";
  $infoarr=(array)json_decode(getdata($infourl));
  print_r($infoarr);
  echo "<br />";
}
?>
로그인 후 복사

代码解析

require('wei_function.php');包含wei_function.php,该函数文件可以购买《微信公众平台开发实例教程》,在该书中第95页有详细讲解。

获取到用户OpenID列表后,根据每条OpenID获取用户基本信息,这里用到foreach循环

foreach ($useropenidarr[&#39;openid&#39;] as $value) {
    //循环获取用户基本信息
   $infourl="https://api.weixin.qq.com/cgi-bin/user/info?access_token=".$token."&openid=".$value."&lang=zh_CN";
    $infoarr=(array)json_decode(getdata($infourl));
    print_r($infoarr);
    echo "<br />";
}
로그인 후 복사

运行结果如图所示。

如果需要将用户信息保存到数据库,只需替换print_r($infoarr);为增加数据库的代码即可,如:

foreach ($useropenidarr[&#39;openid&#39;] as $value) {
  //循环获取用户基本信息
  $infourl="https://api.weixin.qq.com/cgi-bin/user/info?access_token=".$token."&openid=".$value."&lang=zh_CN";
  $infoarr=(array)json_decode(getdata($infourl));
  //将用户信息增加到数据库
   $sql=”insert into userinfo(`nickname`,`sex`,`city`) values
   (‘”.$infoarr[‘nickname&#39;].”&#39;,&#39;”.$infoarr[&#39;sex&#39;].”&#39;,&#39;”.$infoarr[&#39;city&#39;].”&#39;)”;
  mysql_query($sql);
}
로그인 후 복사

以上就是本文的全部内容,希望对大家的学习有所帮助。


相关推荐:

PHP基于接口技术实现多态应用的方法

PHP接口多继承和tarits实现多继承效果的方法教程详情

php实现app接口并返回json数据的方法

위 내용은 PHP 사용자 관리에서 일반적으로 사용되는 인터페이스에서 호출되는 메서드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

cakephp4에서 날짜와 시간을 다루기 위해 사용 가능한 FrozenTime 클래스를 활용하겠습니다.

CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

파일 업로드 작업을 위해 양식 도우미를 사용할 것입니다. 다음은 파일 업로드의 예입니다.

CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

CakePHP 유효성 검사기 만들기 CakePHP 유효성 검사기 만들기 Sep 10, 2024 pm 05:26 PM

컨트롤러에 다음 두 줄을 추가하면 유효성 검사기를 만들 수 있습니다.

CakePHP 로깅 CakePHP 로깅 Sep 10, 2024 pm 05:26 PM

CakePHP에 로그인하는 것은 매우 쉬운 작업입니다. 한 가지 기능만 사용하면 됩니다. cronjob과 같은 백그라운드 프로세스에 대해 오류, 예외, 사용자 활동, 사용자가 취한 조치를 기록할 수 있습니다. CakePHP에 데이터를 기록하는 것은 쉽습니다. log() 함수는 다음과 같습니다.

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

CakePHP 빠른 가이드 CakePHP 빠른 가이드 Sep 10, 2024 pm 05:27 PM

CakePHP는 오픈 소스 MVC 프레임워크입니다. 이를 통해 애플리케이션 개발, 배포 및 유지 관리가 훨씬 쉬워집니다. CakePHP에는 가장 일반적인 작업의 과부하를 줄이기 위한 여러 라이브러리가 있습니다.

See all articles