php 获取微信公众号access_token

用PHP获取微信公众号的access_token是会用到强大的cURL,一般来说平常获取access_token代码如下

//请求url地址
$appId = 'yourAppId';
$appSecret = 'yourAppSecret';
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appId."&secret=".$appSecret;
//初始化curl
$ch = curl_init($url);
//3.设置参数
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
//4.调用接口
$res = curl_exec($ch);
if(curl_errno($ch)){
    var_dump(curl_error($ch));
}
$resArr = json_decode($res,1);
var_dump($resArr);
//5.关闭curl
curl_close($ch);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

但是获取到的值为null,这是由于微信公众号自带的证书验证造成的,所以只需要在设置参数的步骤中加入以下代码即可

 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//跳过证书验证
 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);  // 从证书中检查SSL加密算法是否存在
  • 1
  • 2
  • 1
  • 2

在实际中只需要第一条跳过证书验证即可,但是为了保险,依然加上跳过加密算法

你可能感兴趣的:(php 获取微信公众号access_token)