php實(shí)現(xiàn)實(shí)名認(rèn)證的步驟:1、開通身份證實(shí)名認(rèn)證接口服務(wù),獲取API請求KEY;2、調(diào)用接口API發(fā)出請求,將給定的數(shù)據(jù)(姓名、身份證號)和官方數(shù)據(jù)進(jìn)行對比,返回對比結(jié)果(json格式);3、將返回的結(jié)果解析成數(shù)組,獲取指定數(shù)組元素并判斷是否為1,如果為則實(shí)名認(rèn)證成功,反之不成功。
php入門到就業(yè)線上直播課:進(jìn)入學(xué)習(xí)
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調(diào)試工具:點(diǎn)擊使用
本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦
基于PHP的身份證實(shí)名認(rèn)證示例
一、申請接口
通過 https://www.juhe.cn/docs/api/id/103?s=cpphpcn
自助申請開通接口,獲取API請求KEY。
身份證實(shí)名認(rèn)證服務(wù):
-
身份證二要素官方實(shí)名核驗(yàn),傳入姓名、身份證號,校驗(yàn)此二要素是否一致。直連官方權(quán)威渠道, 精準(zhǔn)實(shí)時(shí)核驗(yàn),毫秒級響應(yīng),零緩存,99.99%準(zhǔn)確率。
二、用示例代碼PHP
//如需請求加密接口,加密方式請參考https://www.sdk.cn/details/d591E8oY9X9r67veZz $apiurl="http://op.juhe.cn/idcard/query";//請求地址 $key = "";//32位的KEY $realname = "";//真實(shí)姓名 $idcard="";//身份證號碼 $params=compact('key','realname','idcard');//組合請求參數(shù) $content=juhecurl($apiurl,$params);//獲取接口返回內(nèi)容json字符串 $result = json_decode($content,true);//解析成數(shù)組 if($result){ if($result['error_code']=='0'){ if($result['result']['res'] == '1'){ echo "身份證號碼和真實(shí)姓名一致"; }else{ echo "身份證號碼和真實(shí)姓名不一致"; } #print_r($result); }else{ echo $result['error_code'].":".$result['reason']; } }else{ echo "請求失敗"; } //網(wǎng)絡(luò)請求方法 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; }
登錄后復(fù)制
推薦學(xué)習(xí):《PHP視頻教程》