PHP ci 版本:3.1.8
百度文字识别PHP sdk 版本:2.2.2
百度文字识别的文档地址(文档上有OCR PHP SDK下载的地址) https://cloud.baidu.com/doc/OCR/OCR-PHP-SDK.html#.E6.96.B0.E5.BB.BAAipOcr
下载完成后将文件解压到 PHP CodeIgniter 的 application/libraries下(我自己在libraries目录下建了一个目录单独管理)
图1
如果 和我一样单独 在libraries建立文件夹管理的,要在程序里的文件引入处做简单修改; 如 图2
图2
如果OCR PHP SDK的所有文件、目录直接放在 libraries 目录下的,上述文件路径可以不改。
重点来了:
要改 OCR PHP SDK的lib/AipBase.php文件的构造方法(大概位置的50行到80行之间)
public function __construct($dataarr){ $this->appId = trim($dataarr['appId']); $this->apiKey = trim($dataarr['apiKey']); $this->secretKey = trim($dataarr['secretKey']); /*//原来的构造函数有三个参数现在改为用1个数组传递,代码如上 $this->appId = trim($appId); $this->apiKey = trim($apiKey); $this->secretKey = trim($secretKey); */ $this->isCloudUser = null; $this->client = new AipHttpClient(); $this->version = '2_2_2'; $this->proxies = array(); }
$this->load->library()//加载类库的时候第二个参数携带的是一个数组,所有我们要把上述构造方法的三个参数该为一个参数
这样就简单的的改完了。可以用了。重点是要记得改一下 AipBase.php这个文件的
AipBase类的构造方法。。
另外就是在PHP ci 里加载类库,代码如下:
这样就打通了可以识别出数据了(当然识别出来的结果处理按照自己的需要做处理)
defined('BASEPATH') OR exit('No direct script access allowed'); class Baiduocr extends CI_Controller { public function index() { $params = array('appId'=>'填自己的', 'apiKey'=>'填自己的','secreKey'=>'填自己的'); $this->load->library('AipOcr',$params);//这里可以按照 上述给的PHPci官方文档说明 创建config文件处理 $url ='http://wwwww.s21i.faiusr.com/4/11111111.png';//图片URL $data = $this->aipocr->basicGeneralUrl($url);//这里选择自己需要的对应功能的方法 print_r($data); } }
这一搞,就能更进一步了解PHP ci 的创建类库了。。。