1
0

User.php 974 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. namespace wx\miniprogram;
  3. use wx\Base;
  4. include_once "WXBizDataCrypt.php";
  5. class User extends Base
  6. {
  7. /**
  8. * 小程序登陆获取用户信息
  9. */
  10. public function code2session($appid, $secret, $code)
  11. {
  12. // auth.code2Session
  13. $url = 'https://api.weixin.qq.com/sns/jscode2session?appid='.$appid.'&secret='.$secret.'&js_code='.$code.'&grant_type=authorization_code';
  14. $result = $this->curl($url);
  15. $result = json_decode($result, true);
  16. return $result;
  17. }
  18. /**
  19. * 解密用户信息
  20. */
  21. public function getInfo($appid, $sessionKey, $encryptedData, $iv)
  22. {
  23. $crypt = new \WXBizDataCrypt($appid, $sessionKey);
  24. $data = NULL;
  25. $errCode = $crypt->decryptData($encryptedData, $iv, $data);
  26. if ($errCode != 0) {
  27. trace($errCode, 'error');
  28. trace($data, 'error');
  29. return false;
  30. }
  31. return json_decode($data, true);
  32. }
  33. }