首页 >后端开发 >PHP问题 >php怎么实现三网手机实名制认证

php怎么实现三网手机实名制认证

青灯夜游
青灯夜游原创
2022-10-21 18:52:221552浏览

实现方法:1、申请开通申请三网手机实名认证API接口,获取API请求KEY;2、用“$params=compact('key','realname','idcard','mobile','showid')”组合请求参数;3、通过“function juhecurl($url,$params=false,$ispost=0){...}”方式发出请求,处理数据并返回结果即可。

php怎么实现三网手机实名制认证

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

基于PHP的三网手机实名认证API接口调用示例

申请三网手机实名认证API接口

通过 https://www.juhe.cn/docs/api/id/208?s=cpphpcn 自助申请开通接口,获取API请求KEY

请求参数

名称 必填 说明
key 在个人中心->我的数据,接口名称上方查看
realname 姓名
idcard 身份证号码
mobile 手机号码
type 1:返回手机运营商,不输入及其他值则不返回
showid 1:返回聚合订单号,不输入及其他值则不返回
province 1:返回手机号归属地,province,city,不输入不返回
detail 是否显示匹配详情码,传1显示,默认不显示(简版情况下输入1的时候,固定返回24)

PHP示例代码

如需请求加密接口,加密方式请参考 https://www.sdk.cn/details/d591E8oY9X9r67veZz

$apiurl="http://v.juhe.cn/telecom/query";//请求地址
$key = "";//32位的KEY
$realname = "";//真实姓名
$idcard="";//身份证号码
$mobile="";//手机号码
$showid=1;//传入返回单号
$params=compact('key','realname','idcard','mobile','showid');//组合请求参数
$content=juhecurl($apiurl,$params);//获取接口返回内容json字符串
$result = json_decode($content,true);//解析成数组
if($result){
    if($result['error_code']=='0'){
      echo $result['result']['res'].':'.$result['result']['resmsg'];       
        #print_r($result);
    }else{
        echo $result['error_code'].":".$result['reason'];
    }
}else{
    echo "请求失败";
}

//网络请求方法
 function juhecurl($url,$params=false,$ispost=0){
        $httpInfo = array();
        $ch = curl_init();
 
        curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
        curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 3);
        curl_setopt( $ch, CURLOPT_TIMEOUT , 8);
        curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
        if ($params) {
            if (is_array($params)) {
                $paramsString = http_build_query($params);
            } else {
                $paramsString = $params;
            }
        } else {
            $paramsString = "";
        }   
        if( $ispost )
        {
            curl_setopt( $ch , CURLOPT_POST , true );
            curl_setopt( $ch , CURLOPT_POSTFIELDS , $paramsString);
            curl_setopt( $ch , CURLOPT_URL , $url );
        }
        else
        {
            if($paramsString ){
                curl_setopt( $ch , CURLOPT_URL , $url.'?'.$paramsString);
            }else{
                curl_setopt( $ch , CURLOPT_URL , $url);
            }
        }
        $response = curl_exec( $ch );
        if ($response === FALSE) {
            //echo "cURL Error: " . curl_error($ch);
            return false;
        }
        $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );
        $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );
        curl_close( $ch );
        return $response;
}

返回结果示例

{
    "reason": "查询成功",
    "result": {
        "realname": "***",
        "mobile": "***********",
        "idcard": "******************",
        "res": 2,
        "resmsg": "三要素身份验证不一致",
         "type": "移动",
        "orderid":"J201712251904163782Ay",
        "province":"广东省",
        "city" : "惠州市",
        "rescode":"24"
    },
    "error_code": 0
}

推荐学习:《PHP视频教程

以上是php怎么实现三网手机实名制认证的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn