总结
豆包 AI 助手文章总结

TP5 封装阿里云敏感词检测接口

*文
发布: 2017-12-21 11:14:11
原创
4019人浏览过

在实际项目中,难免会需要屏蔽敏感词汇。本文以tp5为实例封装一个敏感词检测接口供大家参考。

阿里云内容检测API SDK开发包:https://help.aliyun.com/knowledge_detail/50180.html

<?php
namespace Potting;
include_once 'Aliyun/aliyun-php-sdk-core/Config.php';
use Green\Request\V20170112 as Green;
class TextScan{
	private static $accessKeyId='';
	private static $accessKeySecret='';
	static public function text($content){
		date_default_timezone_set("PRC");
		$iClientProfile = \DefaultProfile::getProfile("cn-shanghai", self::$accessKeyId, self::$accessKeySecret);
		\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' => uniqid(),
		'content' => $content
		);
		/**
		* 文本垃圾检测: antispam
		* 关键词检测: keyword
		**/
		$request->setContent(json_encode(array("tasks" => array($task1),
		"scenes" => array("antispam"))));
		try {
			$response = $client->getAcsResponse($request);
			$result=array();
			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;
							$result=$taskResult;
						}
					}else{
						print_r("task process fail:" + $response->code);
					}
				}
			}else{
				print_r("detect not success. code:" + $response->code);
			}
			$result=$result->results[0];
			$data=array();
			if($result->label == 'normal'){
				$data['code']=true;
				$data['label']=$result->label;
			}else{
				$data['code']=false;
				$data['label']=self::getlabel($result->label);
			}
			return $data;
		} catch (Exception $e) {
			print_r($e);
		}

	}
	static private function getlabel($label){
		switch ($label){
			case  'normal':
				return '正常文本';
				break;
			case  'spam':
				return '输入的内容含垃圾信息';
				break;
			case  'ad':
				return '输入的内容含广告';
				break;
			case  'politics':
				return '输入的内容含渉政';
				break;
			case  'terrorism':
				return '输入的内容含暴恐';
				break;
			case  'abuse':
				return '输入的内容含辱骂';
				break;
			case  'porn':
				return '输入的内容含色情';
				break;
			case  'flood':
				return '输入的内容含灌水';
				break;
			case  'contraband':
				return '输入的内容含垃违禁';
				break;
			case  'customized':
				return '输入的内容包含敏感词';
				break;
			default:
				return '';
				break;
		}
	}
}
登录后复制

相关阅读:

TP5实现邮件发送服务封装以及可发附件的实例

tp5如何使用bootstrapvalidator进行异步验证邮箱的示例

关于TP5.0 MVC入门视频的资源分享

以上就是本篇文章的全部内容,同学们如果有疑问,可以在下方评论区探讨哦~

以上就是TP5 封装阿里云敏感词检测接口的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
豆包 AI 助手文章总结
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号