| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- <?php
- namespace common\pay\payplat;
- class PayUtils
- {
- /**
- * @param array $data
- * @param string $secretKey
- * @return string
- */
- public static function makeSign($data)
- {
- $str = '';
- ksort($data);
- foreach ($data as $key => $value) {
- if ($key == 'sign') {
- continue;
- }
- $value = strval($value);
- if ($value === '') { //参数为空不参与签名
- continue;
- }
- $str .= "{$key}={$value}&";
- }
- $str = rtrim($str, '&');
- return strtoupper(md5($str));
- }
- /**
- * @param array $data 参数
- * @param string $secretKey
- * @return bool
- */
- public static function checkSign($data)
- {
- $sign = isset($data['sign']) ? $data['sign'] : null;
- if ($sign == null) {
- return false;
- }
- return self::makeSign($data) === $sign;
- }
- }
|