本文介绍了如何使用PHP SDK管理自定义图库。

功能描述

您可以自定义智能鉴黄、暴恐涉政识别、图片或视频广告的图片样本,满足个性化内容管控需求。关于参数的详细信息,请参见创建图库API文档

您需要使用内容安全的API接入地址,调用本SDK接口。关于API接入地址的信息,请参见接入地址(Endpoint)

前提条件

已安装PHP依赖。关于安装PHP依赖的具体操作,请参见安装PHP依赖
说明 请一定按照安装PHP依赖页面中的版本安装,否则会导致调用失败。

查询自定义图库列表

您可以使用以下代码查询用户图库列表(包括用户自定义的图库列表和系统回流图库):
<?php

include_once 'aliyuncs/aliyun-php-sdk-core/Config.php';

use Green\Request\V20170823 as Green;

// 请替换成您的AccessKey ID、AccessKey Secret。
$iClientProfile = DefaultProfile::getProfile("cn-shanghai", "您的AccessKey ID", "您的AccessKey Secret");
DefaultProfile::addEndpoint("cn-shanghai", "cn-shanghai", "Green", "green.cn-shanghai.aliyuncs.com");
$client = new DefaultAcsClient($iClientProfile);

$request = new Green\DescribeImageLibRequest();
$request->setServiceModule("open_api");
try {
    $response = $client->getAcsResponse($request);
    print_r($response);
} catch (Exception $e) {
    print_r($e);
}

创建自定义图库

您可以使用以下代码创建自定义图库:
说明 请根据您所需要的业务场景设置不同的参数。
<?php

include_once 'aliyuncs/aliyun-php-sdk-core/Config.php';

use Green\Request\V20170823 as Green;

// 请替换成您的AccessKey ID、AccessKey Secret。
$iClientProfile = DefaultProfile::getProfile("cn-shanghai", "您的AccessKey ID", "您的AccessKey Secret");
DefaultProfile::addEndpoint("cn-shanghai", "cn-shanghai", "Green", "green.cn-shanghai.aliyuncs.com");
$client = new DefaultAcsClient($iClientProfile);

$request = new Green\CreateImageLibRequest();
$request->setServiceModule("open_api");
$request->setName("图库名称");
$request->setScene("图库的使用场景");
$request->setCategory("图库类型");
try {
    $response = $client->getAcsResponse($request);
    print_r($response);
} catch (Exception $e) {
    print_r($e);
}

修改自定义图库

您可以使用以下代码修改自定义图库的名称及其适用的业务场景(BizType):

<?php

include_once 'aliyuncs/aliyun-php-sdk-core/Config.php';

use Green\Request\V20170823 as Green;

// 请替换成您的AccessKey ID、AccessKey Secret。
$iClientProfile = DefaultProfile::getProfile("cn-shanghai", "您的AccessKey ID", "您的AccessKey Secret");
DefaultProfile::addEndpoint("cn-shanghai", "cn-shanghai", "Green", "green.cn-shanghai.aliyuncs.com");
$client = new DefaultAcsClient($iClientProfile);

$request = new Green\UpdateImageLibRequest();
$request->setId("图片ID");
$request->setName("图库名称");
$request->setScene("图库的使用场景");
$request->setCategory("图库类型");
try {
    $response = $client->getAcsResponse($request);
    print_r($response);
} catch (Exception $e) {
    print_r($e);
}

删除自定义图库

您可以使用以下代码删除自定义图库:
注意 删除自定义图库时,图库下的所有图片也将被删除。
<?php

include_once 'aliyuncs/aliyun-php-sdk-core/Config.php';

use Green\Request\V20170823 as Green;

// 请替换成您的AccessKey ID、AccessKey Secret。
$iClientProfile = DefaultProfile::getProfile("cn-shanghai", "您的AccessKey ID", "您的AccessKey Secret");
DefaultProfile::addEndpoint("cn-shanghai", "cn-shanghai", "Green", "green.cn-shanghai.aliyuncs.com");
$client = new DefaultAcsClient($iClientProfile);

$request = new Green\DeleteImageLibRequest();
$request->setId("图片ID");
try {
    $response = $client->getAcsResponse($request);
    print_r($response);
} catch (Exception $e) {
    print_r($e);
}

查询自定义图库图片列表

您可以使用以下代码查询自定义图库中所有已添加的图片列表:
<?php

include_once 'aliyuncs/aliyun-php-sdk-core/Config.php';

use Green\Request\V20170823 as Green;

// 请替换成您的AccessKey ID、AccessKey Secret。
$iClientProfile = DefaultProfile::getProfile("cn-shanghai", "您的AccessKey ID", "您的AccessKey Secret");
DefaultProfile::addEndpoint("cn-shanghai", "cn-shanghai", "Green", "green.cn-shanghai.aliyuncs.com");
$client = new DefaultAcsClient($iClientProfile);

$request = new Green\DescribeImageFromLibRequest();
$request->setImageLibId("图库ID");
$request->setPageSize("10");
$request->setCurrentPage("1");
try {
    $response = $client->getAcsResponse($request);
    print_r($response);
} catch (Exception $e) {
    print_r($e);
}

删除自定义图片

您可以使用以下代码删除自定义图库中的多张自定义图片:
<?php

include_once 'aliyuncs/aliyun-php-sdk-core/Config.php';

use Green\Request\V20170823 as Green;

// 请替换成您的AccessKey ID、AccessKey Secret。
$iClientProfile = DefaultProfile::getProfile("cn-shanghai", "您的AccessKey ID", "您的AccessKey Secret");
DefaultProfile::addEndpoint("cn-shanghai", "cn-shanghai", "Green", "green.cn-shanghai.aliyuncs.com");
$client = new DefaultAcsClient($iClientProfile);

$request = new Green\DeleteImageFromLibRequest();
$request->setIds("['图片ID','图片ID','图片ID']");// 多张图片请使用英文逗号隔开。
try {
    $response = $client->getAcsResponse($request);
    print_r($response);
} catch (Exception $e) {
    print_r($e);
}