| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- <?php
- namespace common\pay\payflash;
- class PayUtils
- {
- /**
- * @param array $data
- * @return string
- */
- public static function makeSign($data, $key)
- {
- $merchantid = $data['merchantid'];
- $orderno = $data['orderno'];
- $orderamount = $data['orderamount'];
- $serverbackurl = $data['serverbackurl'];
- $callbackurl = $data['callbackurl'];
- $tokenkey = $key; //密钥信息
- $sign = md5($merchantid.$orderno.$orderamount.$serverbackurl.$callbackurl.$tokenkey);
- return $sign;
- }
- /**
- * @param array $data
- * @param $key
- * @return bool|int
- */
- public static function verify($data, $key)
- {
- // 签名
- if (!isset($data['sign']) || trim($data['sign']) === '') {
- return false;
- }
- $orderno = (string)$data['orderno'];
- $orderamount = sprintf("%.2f",$data['orderamount']);
- $payamount = sprintf("%.2f",$data['payamount']);
- $confirmpaytime = (string)$data['confirmpaytime'];
- $safetycode = $data['safetycode'];
- $tokenkey = $key;
- $sign = $data['sign'];
-
- file_put_contents('jiami.txt',$orderno."{$orderamount}"."{$payamount}".$confirmpaytime."{$safetycode}"."{$tokenkey}");
- $sing_new = md5($orderno."{$orderamount}"."{$payamount}".$confirmpaytime."{$safetycode}"."{$tokenkey}"); //自己加密的密钥
- file_put_contents('sing_new.txt',$sing_new);
- // 比较两次的签名是否一致
- if($sign == $sing_new){
- return true;
- }else{
- return false;
- }
-
- }
- }
|