收藏
回答

php生成的签名与官方提供的工具生成的签名不一致

function generateSignature($params, $key) {

    // 对参数按字母顺序排序

    ksort($params);


    // 开始拼接字符串

    $sign_str = '';


    // 遍历排序后的参数

    foreach ($params as $k => $v) {

        // 忽略空值和sign参数

        if (empty($v) || $k === 'sign') {

            continue;

        }

        // 对参数值进行urlencode并拼接

        $sign_str .= $k . '=' . urlencode($v) . '&';

    }


    // 在最后添加key参数

    $sign_str .= 'key=' . urlencode($key);


    // 使用MD5加密并转换为大写

    return strtoupper(md5($sign_str));

} 是否有误

回答关注问题邀请回答
收藏

1 个回答

登录 后发表内容