PHP 配置微信第三方SDK信息(比如:H5微信转发等等)
代码如下:
public function transmit()
{
//公众号appid及开发秘钥
$APPID = '*******';
$SECRET = '*********';
$root['url'] = '填写返回给前端的地址';
//根据appid和开发秘钥去换取access_token调用接口凭证
$url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' . $APPID . '&secret=' . $SECRET;
$file_contents = file_get_contents($url);
$file_contents = json_decode($file_contents, true);
$token = $file_contents['access_token'];
$jsapi_ticket = null;
if (!$jsapi_ticket || strlen($jsapi_ticket) < 6) {
$ur = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token={$token}&type=jsapi";
$res = file_get_contents($ur);
$res = json_decode($res, true);
$jsapi_ticket = $res['ticket'];
}
$root['jsapi_ticket'] = $jsapi_ticket;
$timestamp = time();//生成签名的时间戳
$metas = range(0, 9);
$metas = array_merge($metas, range('A', 'Z'));
$metas = array_merge($metas, range('a', 'z'));
$nonceStr = '';
for ($i = 0; $i < 16; $i++) {
$nonceStr .= $metas[rand(0, count($metas) - 1)];//生成签名的随机串
}
$url = '填写返回给前端的地址';
$string1 = "jsapi_ticket=" . $jsapi_ticket . "&noncestr=" . $nonceStr . "×tamp=" . $timestamp . "&url=" . $url . "";
$signature = sha1($string1);
$root['appid'] = $APPID;
$root['nonceStr'] = $nonceStr;
$root['timestamp'] = $timestamp;
$root['signature'] = $signature;
echo $root;
}