微信jssdk配置
获取微信jsapi_ticket票据
public function getJsApiTicket(){
if($_SESSION['jsapi_ticket_expire_time']>time() && $_SESSION['jsapi_ticket']){
$jsapi_ticket = $_SESSION['jsapi_ticket'];
}else{
$access_token = $this->get_access_token();
$url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=$access_token&type=jsapi";
$res=$this->http_curl($url);
$jsapi_ticket = $res['ticket'];
$_SESSION['jsapi_ticket'] = $jsapi_ticket;
$_SESSION['jsapi_ticket_expire_time'] = time()+7000;
}
return $jsapi_ticket;
} 获取随机码生成$noncestr
public function getRandCode($num=16){
$array= array(
'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',
'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',
'0','1','2','3','4','5','6','7','8','9'
);
$tmpstr = '';
$max = count($array);
for($i=1;$i<=$num;$i++){
$key = rand(0,$max-1);
$tmpstr .= $array[$key];
}
return $tmpstr;
} 生成jssdk配置项返回给前台
public function getWxConfig_(){
$url= I('url');
$jsapi_ticket = $this->getJsApiTicket();
$appid = C('AppId');
$timestamp = time();
$noncestr = $this->getRandCode();
$signature = "jsapi_ticket=$jsapi_ticket&noncestr=$noncestr×tamp=$timestamp&url=$url";
$signature = sha1($signature);
$array = array(
"appId"=>$appid,
"timestamp"=>$timestamp,
"nonceStr"=>$noncestr,
"signature"=>$signature,
"jsapi_ticket"=>$jsapi_ticket,
"timestamp"=>$timestamp,
"url"=>$url
);
$this->ajaxReturn($array);
} 完事儿。