微信卡卷html 领取的签名
/*
* 创建签名
*/
public function sign()
{
$cardId = 'p7YU46qidv5_baigH0Ds4ObP7MDg';
$parameters = array(
'code' => '111111',
'timeStamp' => '' . time() . '', //时间戳
'nonce_str' => $this->createNoncestr(), //随机串
'card_id' => $cardId,
);
$parameters['api_ticket'] = $this->Ticket();
$parameters['signature'] = $this->getSign($parameters);
return outJson($parameters, '1', '');
}
//作用:生成签名
public function getSign($Obj)
{
foreach ($Obj as $k => $v) {
$Parameters[$k] = $v;
}
sort($Parameters, SORT_STRING);
$String = '';
foreach ($Parameters as $v) {
$String .= $v;
}
$String = sha1($String);
return $String;
}
public function createNonceStr($length = 16)
{
$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$str = '';
for ($i = 0; $i < $length; $i++) {
$str .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);
}
return $str;
}