Rumah >pembangunan bahagian belakang >tutorial php >php调接口Sign的校验

php调接口Sign的校验

不言
不言asal
2018-05-09 10:33:232122semak imbas

这篇文章主要介绍了关于php调接口Sign的校验 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

<?php
namespace App\Librarys;

class SignUtil{
    /**
     * @param array $params
     * @return string
     */
    public static function getCheckSign($params) {
    	$arrSign = [];
        ksort($params);
        $ts = $params[&#39;ts&#39;];
        $token = &#39;8553d751250eb0846e84d67b6bdf250f&#39;;
        foreach ($params as $k => $v) {
            if ($k == &#39;sign&#39; || $k == &#39;ts&#39;) {
                continue;
            }
            if (is_array($v)) {
                $v = json_encode($v);
            }
            $strTmp = trim($k) . &#39;=&#39; . trim($v);
            $arrSign[$strTmp] = $strTmp;
        }
        $strSign = implode(&#39;&&#39;, $arrSign);
        $sign = md5($strSign.$ts.$token);
        return $sign;
    }

}
   $params = $request->all();  
if(!isset($params[&#39;sign&#39;])){  
    return $this->failsmsg(&#39;缺少sign校验参数&#39;);  
}  
$mySign = SignUtil::getCheckSign($params);  
if($params[&#39;sign&#39;] != $mySign){  
    return $this->failsmsg(&#39;sign校验失败&#39;);  
}

以上就是本篇文章的全部内容了,更多相关内容请关注PHP中文网。

相关推荐:

SQLite PHP接口详解

php接口中interface存在的意义

Atas ialah kandungan terperinci php调接口Sign的校验 . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn