'', 'timestamp'=> '', 'access_token'=> '', 'version'=> 1, 'param'=> json_encode(['user_id'=>1,'order_num'=>'123456']), 'method' => 'MD5', ]; $paramStr = ''; ksort($param); foreach ($param as $kk=>$vv) { if($vv != null && 'null' != $vv) { $paramStr .=$kk.'='.$vv.'&'; } } $unSignParaString = ''; if(strlen($paramStr)> 0) $unSignParaString = substr($paramStr,0,strlen($paramStr) - 1); return md5($unSignParaString.'&signSecret='.$signSecret); } // 2.HMAC_SHA256(官方推荐) public static function HMAC_SHA256Sign($param,$signSecret){ $paramStr = ""; ksort($param); foreach ($param as $kk=>$vv){ if (null != $vv && "null" != $vv) { $paramStr .= $kk . "=" . $vv . "&"; } } $unSignParaString = ''; if (strlen($paramStr) > 0) { $unSignParaString = substr($paramStr, 0, strlen($paramStr) - 1); } $unSignParaString = $unSignParaString."&signSecret=" . $signSecret; $signStr = base64_encode( hash_hmac( 'sha256', $unSignParaString, $signSecret, true ) ); return $signStr; } }