ホームページ >バックエンド開発 >PHPの問題 >PHP で 3 ネットワーク携帯電話の実名認証を実装する方法

PHP で 3 ネットワーク携帯電話の実名認証を実装する方法

青灯夜游
青灯夜游オリジナル
2022-10-21 18:52:221557ブラウズ

実装方法: 1. 3 つのネットワークの携帯電話実名認証 API インターフェイスのオープンを申請し、API リクエスト KEY を取得します; 2. "$params=compact('key','realname', 'idcard','mobile ','showid')" を組み合わせたリクエスト パラメータ; 3. "function juhecurl($url,$params=false,$ispost=0){...}" を通じてリクエストを作成し、データを処理しますそして結果を返します。

PHP で 3 ネットワーク携帯電話の実名認証を実装する方法

このチュートリアルの動作環境: Windows7 システム、PHP8.1 バージョン、DELL G3 コンピューター

ベースPHP 実名携帯電話実名認証 API インターフェース呼び出し例

3 ネットワーク携帯電話実名認証 API の申請インターフェイス

合格 https://www.juhe.cn/docs/api/id/208?s=cpphpcn インターフェイスを開くためのセルフサービス アプリケーションとAPI リクエスト KEY

リクエスト パラメータ

##NameRequired説明##key##本名は##idcardID カード番号#携帯電話番号##1: 携帯電話会社に戻ります。他の値が入力されない場合は返されません。 #No1: 携帯電話番号、都道府県、市区町村の位置に戻ります。入力しないと、戻りません。detailNo一致する詳細コードを表示するかどうか、表示する場合は 1 を渡します。デフォルトは表示しません (簡易版では 1 を入力すると 24 が返されます)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 ビデオ チュートリアル
を取得します。
[パーソナル センター] -> [マイ データ] で、インターフェイス名の上に表示されます
#名前 ##は
mobile #Yes
##type No
PHP サンプル コード
暗号化インターフェイスをリクエストする必要がある場合は、戻り結果の例

以上がPHP で 3 ネットワーク携帯電話の実名認証を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。