{ "errno": 0, "msg": "success", "data": { "log_id": "5327722537189137631", "words_result": { "color": "green", "number": "苏AD12267", "probability": [ 1, 0.9999977350235, 0.99999630451202, 0.99999868869781, 0.99998331069946, 0.99999988079071, 0.9531751871109, 0.99922955036163 ], "vertexes_location": [{ "y": 223, "x": 170 }, { "y": 223, "x": 282 }, { "y": 256, "x": 282 }, { "y": 256, "x": 170 } ] } } }
<?php /** * Created by PhpStorm. * User: FZS * Time: 2019/3/13 17:10 */ //---------------------------------- // 百度车牌识别调用类 //---------------------------------- class freeApi{ private $apiKey = false; //百度应用AppID private $secretKey = false; //百度应用API Key private $tokenUrl = 'https://aip.baidubce.com/oauth/2.0/token'; private $apiUrl = 'https://aip.baidubce.com/rest/2.0/ocr/v1/license_plate'; public function __construct($apikey,$secretkey){ $this->apiKey = $apikey; $this->secretKey = $secretkey; } /** * 获取token * @return array */ public function getToken(){ $params = [ 'grant_type' => 'client_credentials', 'client_id' => $this->apiKey, 'client_secret' => $this->secretKey, ]; $params = $this->handleUrl($params); return $this->returnArray($this->freeApiCurl($this->tokenUrl,$params,1)); } /** * url拼接 * @return string */ private function handleUrl($params){ $o = ""; foreach ( $params as $k => $v ) { $o.= "$k=" . urlencode( $v ). "&" ; } $params = substr($o,0,-1); return $params; } /** * 将JSON内容转为数据,并返回 * @param string $content [内容] * @return array */ public function returnArray($content){ return json_decode($content,true); } /** * 获取车牌证识别结果 * @return array */ public function getResult(){ $params = [ 'image' => base64_encode(file_get_contents('图片路径')), ]; return $this->returnArray($this->freeApiCurl($this->apiUrl.'?access_token='.$this->getToken()['access_token'],$params,1)); } /** * 请求接口返回内容 * @param string $url [请求的URL地址] * @param string $params [请求的参数] * @param int $ipost [是否采用POST形式] * @return string */ public function freeApiCurl($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_HTTP_VERSION , CURL_HTTP_VERSION_1_1 ); curl_setopt( $ch, CURLOPT_USERAGENT , 'free-api' ); curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 ); curl_setopt( $ch, CURLOPT_TIMEOUT , 60); curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true ); if( $ispost ) { curl_setopt( $ch , CURLOPT_POST , true ); curl_setopt( $ch , CURLOPT_POSTFIELDS , $params ); curl_setopt( $ch , CURLOPT_URL , $url ); } else { if($params){ curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params ); }else{ curl_setopt( $ch , CURLOPT_URL , $url); } } $response = curl_exec( $ch ); if ($response === FALSE) { return false; } $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE ); $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) ); curl_close( $ch ); return $response; } }