34 行
865 B
PHP
可执行文件
34 行
865 B
PHP
可执行文件
<?php
|
||
|
||
namespace Common\Business;
|
||
//[1.5.52]
|
||
/**
|
||
* 生成签名类
|
||
* Class Sign
|
||
* [
|
||
* 微信HMAC-SHA256 签名 wxHmacSign
|
||
* ]
|
||
* @package Common\Business
|
||
*/
|
||
class Sign
|
||
{
|
||
/**
|
||
* 微信HMAC-SHA256 签名
|
||
* @param $param 参加签名的参数
|
||
* @param $key 私钥
|
||
* @return mixed
|
||
*/
|
||
public function wxHmacSign($param, $key)
|
||
{
|
||
//签名步骤一:按字典序排序数组参数
|
||
ksort($param);
|
||
$string = ParamsToUrl($param); //参数进行拼接key=value&k=v
|
||
//签名步骤二:在string后加入KEY
|
||
$string = $string . "&key=" . $key;
|
||
//签名步骤三:HMAC-SHA256加密
|
||
$string = hash_hmac('sha256',$string,$key);
|
||
//签名步骤四:所有字符转为大写
|
||
$sign = strtoupper($string);
|
||
return $sign;
|
||
}
|
||
} |