本文整理汇总了PHP中create_linkstring函数的典型用法代码示例。如果您正苦于以下问题:PHP create_linkstring函数的具体用法?PHP create_linkstring怎么用?PHP create_linkstring使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了create_linkstring函数的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: build_mysign
function build_mysign($sort_array, $security_code, $sign_type = "MD5")
{
$prestr = create_linkstring($sort_array);
$prestr = $prestr . $security_code;
$mysgin = sign($prestr, $sign_type);
return $mysgin;
}
示例2: notify_verify
function notify_verify() {
//获取远程服务器ATN结果,验证是否是支付宝服务器发来的请求
if($this->transport == "https") {
$veryfy_url = $this->gateway. "service=notify_verify" ."&partner=" .$this->partner. "¬ify_id=".$_POST["notify_id"];
} else {
$veryfy_url = $this->gateway. "partner=".$this->partner."¬ify_id=".$_POST["notify_id"];
}
$veryfy_result = $this->get_verify($veryfy_url);
//生成签名结果
if(empty($_POST)) { //判断POST来的数组是否为空
return false;
}
else {
$post = para_filter($_POST); //对所有POST返回的参数去空
$sort_post = arg_sort($post); //对所有POST反馈回来的数据排序
$this->mysign = build_mysign($sort_post,$this->_key,$this->sign_type); //生成签名结果
//写日志记录
log_result("veryfy_result=".$veryfy_result."\n notify_url_log:sign=".$_POST["sign"]."&mysign=".$this->mysign.",".create_linkstring($sort_post));
//判断veryfy_result是否为ture,生成的签名结果mysign与获得的签名结果sign是否一致
//$veryfy_result的结果不是true,与服务器设置问题、合作身份者ID、notify_id一分钟失效有关
//mysign与sign不等,与安全校验码、请求时的参数格式(如:带自定义参数等)、编码格式有关
if (preg_match("/true$/i",$veryfy_result) && $this->mysign == $_POST["sign"]) {
return true;
} else {
return false;
}
}
}
示例3: build_mysign
function build_mysign($sort_array, $key, $sign_type = "MD5")
{
$prestr = create_linkstring($sort_array);
$prestr = $prestr . $key;
log_result("sign : " . $prestr);
$mysgin = sign($prestr, $sign_type);
return $mysgin;
}
示例4: build_mysign
function build_mysign($sort_array)
{
//把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串
$prestr = create_linkstring($sort_array);
//调用RSA签名方法
$mysgin = sign($prestr);
return $mysgin;
}
示例5: build_mysign
function build_mysign($sort_array, $key, $sign_type = "MD5")
{
$prestr = create_linkstring($sort_array);
//把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串
$prestr = $prestr . $key;
//把拼接后的字符串再与安全校验码直接连接起来
$mysgin = sign($prestr, $sign_type);
//把最终的字符串签名,获得签名结果
return $mysgin;
}
示例6: alipay_Wap_Auth_AuthAndExecute
/**
* 调用alipay_Wap_Auth_AuthAndExecute接口
*/
function alipay_Wap_Auth_AuthAndExecute($parameter, $key)
{
$this->parameter = para_filter($parameter);
$sort_array = arg_sort($this->parameter);
$this->sign_type = $this->parameter['sec_id'];
$this->_key = $key;
$this->mysign = build_mysign($sort_array, $this->_key, $this->sign_type);
$RedirectUrl = $this->gateway_order . create_linkstring($this->parameter) . '&sign=' . urlencode($this->mysign);
return $RedirectUrl;
// 跳转至该地址
//Header ( "Location: $RedirectUrl" );
}
示例7: return_verify
function return_verify()
{
if ($this->transport == "https") {
$veryfy_url = $this->gateway . "service=notify_verify" . "&partner=" . $this->partner . "¬ify_id=" . $_GET["notify_id"];
} else {
$veryfy_url = $this->gateway . "partner=" . $this->partner . "¬ify_id=" . $_GET["notify_id"];
}
$veryfy_result = $this->get_verify($veryfy_url);
if (empty($_GET)) {
return false;
} else {
$get = para_filter($_GET);
$sort_get = arg_sort($get);
$this->mysign = build_mysign($sort_get, $this->security_code, $this->sign_type);
log_result("veryfy_result=" . $veryfy_result . "\n return_url_log:sign=" . $_GET["sign"] . "&mysign=" . $this->mysign . "&" . create_linkstring($sort_get));
if (preg_match("/true\$/i", $veryfy_result) && $this->mysign == $_GET["sign"]) {
return true;
} else {
return false;
}
}
}
示例8: notify_verify
function notify_verify()
{
if (isset($_POST['notify_id'])) {
$notify_id = $_POST['notify_id'];
} else {
$notify_id = '';
}
if ($this->transport == "https") {
$veryfy_url = $this->gateway . "service=notify_verify" . "&partner=" . $this->partner . "¬ify_id=" . $notify_id;
} else {
$veryfy_url = $this->gateway . "partner=" . $this->partner . "¬ify_id=" . $notify_id;
}
$veryfy_result = $this->get_verify($veryfy_url);
log_result("Aplipay veryfy - veryfy_url = " . $veryfy_url);
if (empty($_POST)) {
log_result("Aplipay veryfy - empty(post)");
return false;
} else {
$post = para_filter($_POST);
//������POST���صIJ���ȥ��
$sort_post = arg_sort($post);
//������POST�����������������
log_result("Aplipay veryfy build_mysign - key = " . $this->_key . " sign_type" . $this->sign_type);
$this->mysign = build_mysign($sort_post, $this->_key, $this->sign_type);
//���ǩ����
//д��־��¼
log_result("veryfy_result=" . $veryfy_result . "\n notify_url_log:sign=" . $_POST['sign'] . "&mysign=" . $this->mysign . "," . create_linkstring($sort_post));
//�ж�veryfy_result�Ƿ�Ϊture����ɵ�ǩ����mysign���õ�ǩ����sign�Ƿ�һ��
//$veryfy_result�Ľ����true����������������⡢���������ID��notify_idһ����ʧЧ�й�
//mysign��sign���ȣ��밲ȫУ���롢����ʱ�IJ����ʽ���磺���Զ������ȣ��������ʽ�й�
if (preg_match("/true\$/i", $veryfy_result) && $this->mysign == $_POST['sign']) {
return true;
} else {
return false;
}
}
}
示例9: buildRequestLinkData
private function buildRequestLinkData($parameter)
{
$paramArray = para_filter($parameter);
// 除去数组中的空值和签名参数
$sort_array = arg_sort($paramArray);
// 得到从字母a到z排序后的签名参数数组
// 生成签名
$calcSign = build_mysign($sort_array, $this->partnerKey, $this->configSecId);
return create_linkstring($paramArray) . '&sign=' . urlencode($calcSign);
}
示例10: return_verify
function return_verify()
{
//判断GET来的数组是否为空
if (empty($_GET)) {
return false;
} else {
//对所有GET反馈回来的数据去空
$get = para_filter($_GET);
//对所有GET反馈回来的数据排序
$sort_get = arg_sort($get);
//获取返回的sign
$sign = $_GET["sign"];
//把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串
$prestr = create_linkstring($sort_get);
//返回验签bool值
return verify($prestr, $sign);
}
}
示例11: getToken
/**
* 返回token参数
* 参数 result 需要先urldecode
*/
function getToken($result)
{
//URL转码
$result = urldecode($result);
//根据 & 符号拆分
$Arr = explode('&', $result);
//临时存放拆分的数组
$temp = array();
//待签名的数组
$myArray = array();
//循环构造key、value数组
for ($i = 0; $i < count($Arr); $i++) {
$temp = explode('=', $Arr[$i], 2);
$myArray[$temp[0]] = $temp[1];
}
//需要先解密res_data
$myArray['res_data'] = decrypt($myArray['res_data']);
//获取返回的RSA签名
$sign = $myArray['sign'];
//去sign,去空值参数
$myArray = para_filter($myArray);
//排序数组
$sort_array = arg_sort($myArray);
//拼凑参数链接 & 连接
$prestr = create_linkstring($sort_array);
//返回布尔值,是否验签通过
$isverify = verify($prestr, $sign);
//判断签名是否正确
if ($isverify) {
//返回token
return getDataForXML($myArray['res_data'], '/direct_trade_create_res/request_token');
} else {
//当判断出签名不正确,请不要验签通过
return '签名不正确';
}
}