您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何按字典序使用url鍵值對的格式拼接成字符串md5加密簽名,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
對所有的傳入的非空參數進行按字典序使用url鍵值對的格式拼接成字符串string1
String string1 = key1=value1&key2=value2..
在字符串string1最后拼接上簽名所得的令得到字符串string2
String string2 = string2 + &密鑰名稱=8934e7d15453e97507ef794cf7b0519d
然后對string2進行MD5加密,再將加密所得到的32位字符串轉換為大寫,所得到的值即為key_sign
$payConfig = array( 'pay_ver' => '100', 'pay_type' => '010', 'service_id' => '015', 'merchant_no' => '', 'terminal_id' => '', 'terminal_trace' => $orderInfo['order_id'], 'terminal_time' => date("YmdHis"), 'total_fee' => $totalFee, 'sub_appid' => '', 'open_id' => $openid, 'notify_url' => "http://www.demo.com" ); $access_token = "da3c47c2a8cd47e9be0868712dae0000"; $payConfig['key_sign'] = self::getSign($payConfig, $access_token); //簽名 function getSign($payConfig, $key) { ksort($payConfig); $str = ""; foreach ($payConfig as $k => $v) { $str =$str. $k . "=" . $v."&"; } $str=$str."access_token=".$key; return strtoupper(md5($str)); } //提交 function postPay($post_data) { $postUrl = ""; $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => $postUrl, CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => false, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => json_encode($post_data), CURLOPT_HTTPHEADER => array( "Content-Type: application/json" ), )); $response = curl_exec($curl); var_dump($response); curl_close($curl); return $response; }
以上就是如何按字典序使用url鍵值對的格式拼接成字符串md5加密簽名,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。