本文介绍了如何使用PHP SDK文本反垃圾接口,对文本内容进行色情、暴恐、涉政等风险进行识别。

功能描述

文本反垃圾接口目前仅支持同步检测。关于参数的详细说明,请参见文本同步检测

一次请求可以检测多条文本,也可以检测单条文本。按实际检测的文本条数进行计费,请参见计费方式概述

前提条件

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

文本内容检测

文本垃圾检测支持自定义关键词,例如添加一些竞品关键词等。如果被检测的文本中包含您添加的关键词,算法会返回您block。

您可以前往内容安全控制台添加关键词,也可以通过API接口添加关键词。

接口 描述 支持的Region
TextScanRequest 提交文本反垃圾检测任务,检测场景参数请传递antispam(scenes=antispam)。
  • cn-shanghai:华东2(上海)
  • cn-beijing:华北2(北京)
  • cn-shenzhen:华南1(深圳)
  • ap-southeast-1:新加坡
示例代码
<?php

include_once 'aliyuncs/aliyun-php-sdk-core/Config.php';
use Green\Request\V20180509 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\TextScanRequest();
$request->setMethod("POST");
$request->setAcceptFormat("JSON");
$task1 = array('dataId' =>  检测数据ID,
    'content' => '需要检测的文本内容'
);

/**
 * 文本垃圾检测:antispam。
 **/
$request->setContent(json_encode(array("tasks" => array($task1),
    "scenes" => array("antispam"))));// 业务场景,固定值。
try {
    $response = $client->getAcsResponse($request);
    print_r($response);
    if(200 == $response->code){
        $taskResults = $response->data;
        foreach ($taskResults as $taskResult) {
            if(200 == $taskResult->code){
                $sceneResults = $taskResult->results;
                foreach ($sceneResults as $sceneResult) {
                    $scene = $sceneResult->scene;
                    $suggestion = $sceneResult->suggestion;
                    // 根据scene和suggetion做相关处理。
                    // 根据不同的suggestion结果做业务上的不同处理。例如,将违规数据删除等。
                }
            }else{
                print_r("task process fail:" + $response->code);
            }
        }
    }else{
        print_r("detect not success. code:" + $response->code);
    }
} catch (Exception $e) {
    print_r($e);
}