本文介绍了如何使用阿里云视觉智能开放平台相关服务的PHP SDK,具体包括SDK的获取和安装方法以及SDK代码示例。
说明 阿里云视觉智能开放平台各类目视觉AI能力SDK接入、接口使用或问题咨询等,请通过钉钉群(23109592)加入阿里云视觉智能开放平台咨询群联系我们。
本文档介绍老版PHP SDK,最低环境要求PHP 5.5,推荐使用新版PHP SDK。
准备工作
- 在安装和使用阿里云SDK前,确保您已经注册阿里云账号并生成访问密钥(AccessKey)。具体操作,请参见创建AccessKey。
- 安装Alibaba Cloud SDK for PHP。 具体步骤如下。
- 下载并安装Composer:
curl -sS https://getcomposer.org/installer | php
。 - 执行Composer命令安装Alibaba Cloud SDK for PHP的最新版本:
php composer.phar require alibabacloud/sdk
。说明 该包为全量包,安装之后可以调用平台的所有能力,Packagist相关信息,请参见alibabacloud/sdk,Github相关信息,请参见openapi-sdk-php。如果您只需要某个类目的能力,也可以按照AI类目安装相应类目的包。 - 在代码中引入Composer自动加载工具:
<?php require __DIR__ . '/vendor/autoload.php';
。
说明PHP: >=5.5
- 下载并安装Composer:
- 您也可以使用如下命令安装相应AI类目的SDK,例如人体人脸服务:
php composer.phar require alibabacloud/facebody
。具体服务的SDK名称如下:AI类目 SDK链接 Github链接 人脸人体 alibabacloud/facebody Facebody 文字识别 alibabacloud/ocr Ocr 商品理解 alibabacloud/goodstech Goodstech 内容审核 alibabacloud/imageaudit Imageaudit 图像识别 alibabacloud/imagerecog Imagerecog 图像生产 alibabacloud/imageenhan Imageenhan 分割抠图 alibabacloud/imageseg Imageseg 目标检测 alibabacloud/objectdet Objectdet 视觉搜索 alibabacloud/imgsearch Imgsearch 图像分析处理 alibabacloud/imageprocess Imageprocess 视频生产 alibabacloud/videoenhan Videoenhan 视频理解 alibabacloud/videorecog Videorecog 视频分割 alibabacloud/videoseg Videoseg 3D视觉 暂无 Threedvision 自学习 暂无 ViapiRegen
说明 本产品依赖包只是从Alibaba Cloud SDK for PHP中同步出来的一部分,其命名空间、用法与Alibaba Cloud SDK for PHP一致。如果您不在乎文件体积,建议您安装Alibaba
Cloud SDK for PHP并经常更新,以便保持最新、最全的产品支持。您也可以仅安装本产品服务的SDK。
代码示例
本文以RecognizeBankCard为例进行说明,SDK示例如下。该方式目前只支持同地域下OSS文件,其他场景请使用新版PHP。
<?php
use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;
use AlibabaCloud\Ocr\Ocr;
// 引入autoload.php
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
require_once $path;
}
AlibabaCloud::accessKeyClient('YOUR_ACCESS_KEY_ID', 'YOUR_ACCESS_KEY_SECRET')
->regionId('cn-shanghai')
->asDefaultClient()->options([]);
try {
$request = Ocr::v20191230()->recognizeBankCard();
$result = $request
->withImageURL("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeBankCard/yhk1.jpg")
->request();
// 获取整体结果
print_r($result->toArray());
// 获取单个字段
echo $result["Data"]["CardNumber"];
} catch (ClientException $exception) {
echo $exception->getMessage();
} catch (ServerException $exception) {
// 获取整体报错信息
print_r($result->toArray());
// 获取单个字段
echo $exception->getErrorCode();
}