您好,登錄后才能下訂單哦!
這篇“php如何實現身份證OCR識別”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“php如何實現身份證OCR識別”文章吧。
實現身份證OCR識別的方法:1、申請開通身份證OCR識別接口,獲取API請求KEY;2、調用接口API,通過“function juhecurl($url,$params=false,$ispost=0){...}”方式發出請求,處理數據并返回結果;3、獲取接口返回內容,并用json_decode()解析成數組;4、打印返回結果。
基于PHP的身份證OCR識別接口調用示例
申請接口
接口備注:識別身份證正面或反面的一些關鍵字
通過 https://www.juhe.cn/docs/api/id/287?s=cpphpcn
自助申請開通接口,獲取API請求KEY
請求參數
名稱 | 必填 | 說明 |
---|---|---|
key | 是 | 在個人中心->我的數據,接口名稱上方查看 |
image | 是 | 圖像數據,base64編碼(不包含data:image/jpeg;base64,),要求base64編碼后大小不超過4M,最短邊至少15px,最長邊最大4096px,支持jpg/png/bmp格式 |
side | 是 | front:正面識別;back:反面識別; |
PHP示例代碼
其中將證件圖片轉為base64字符串
$apiurl="http://apis.juhe.cn/idimage/verify";//請求地址
$key = "";//32位的KEY
$image= "";//圖片base64后字符串
$side="front";//正反面
$params=compact('key','image','side');//組合請求參數
$content=juhecurl($apiurl,$params,1);//post請求獲取接口返回內容json字符串
$result = json_decode($content,true);//解析成數組
if($result){
if($result['error_code']=='0'){
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;
}
JSON返回示例
身份證正面識別結果示例:
{
"reason": "成功",
"result":{
"realname": "張三",/*姓名*/
"sex": "男",/*性別*/
"nation": "侗",/*民族*/
"born": "19760613",/*出生日期*/
"address": "貴州省都勻市甘塘鎮長紅機器廠散居戶169號",/*地址*/
"idcard": "522701197606131935",/*身份證號*/
"side": "front",/*正面*/
"orderid": 339057896/*本次查詢流水號*/
},
"error_code": 0
}
--------------------------------------------------------------------------------------------
身份證背面識別結果示例:
{
"reason": "成功",
"result":{
"begin": "20130501",/*簽發日期*/
"department": "東臺市公安局",/*簽發機關*/
"end": "20180501",/*失效日期*/
"side": "back",/*反面*/
"orderid": 478799279/*本次查詢流水號*/
},
"error_code": 0
}
以上就是關于“php如何實現身份證OCR識別”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。