首选Composer安装
composer require tencentcloud/tencentcloud-sdk-php
安装好之后
//server中的方法
//引入use
use TencentCloud\Common\Credential;
use TencentCloud\Common\Profile\ClientProfile;
use TencentCloud\Common\Profile\HttpProfile;
use TencentCloud\Common\Exception\TencentCloudSDKException;
use TencentCloud\Tms\V20201229\TmsClient;
use TencentCloud\Tms\V20201229\Models\TextModerationRequest;
//方法
public static function textFiltering($value)
{
try {
$cred = new Credential('腾讯云secretId', '腾讯云secretKey');
$httpProfile = new HttpProfile();
//帮助咱们验证文本内容是否安全的网址,不用改,但可以封装
$httpProfile->setEndpoint("tms.tencentcloudapi.com");
$clientProfile = new ClientProfile();
$clientProfile->setHttpProfile($httpProfile);
//ap-shanghai是地域不是固定值
$client = new TmsClient($cred, "ap-shanghai", $clientProfile);
$req = new TextModerationRequest();
$params = array(
//内容=>必须是base64格式的文本内容
"Content" => base64_encode($value)
);
//解json
$req->fromJsonString(json_encode($params));
$resp = $client->TextModeration($req);
} catch (TencentCloudSDKException $e) {
return $e;
}
//返回结果 也可以字定义结果,那就需要改字段,不是这个字段
return $resp->Label;
}
返回结果的说明
?然后是调用
//控制器中的方法
public function sensitiveKey(Request $request)
{
//这里自己验证一下非空,
$res=ContentFiltering::textFiltering($request['text']);
if ($res=='Normal'){
//这里可以自己封装一下
return ['error_code'=>200,'msg'=>'正常','data'=>$request['text']];
}else{
return ['error_code'=>10000,'msg'=>'敏感词汇','data'=>''];
}
}
GET请求哈!!!
如果是本地开发会报错:
如果内容是:cURL error 60: SSL certificate problem: unable to get local issuer certificate
解决方案
php5.6以上的版本会出现这种问题
解决办法:
访问https://curl.haxx.se/docs/caextract.html,下载cacert.pem,并在php.ini文件添加
curl.cainfo="D:/wamp/bin/php/php7.0.10/extras/ssl/cacert.pem"
openssl.cafile="D:/wamp/bin/php/php7.0.10/extras/ssl/cacert.pem"
|