温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

php如何实现身份证OCR识别

发布时间:2022-10-24 16:49:46 阅读:338 作者:iii 栏目:编程语言
PHP开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

这篇“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格式
sidefront:正面识别;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识别”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×