定制 nickbai/sensitive 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

nickbai/sensitive

最新稳定版本:V1.0.2

Composer 安装命令:

composer require nickbai/sensitive

包简介

Filter or replace sensitive words in the text

README 文档

README

基于DFA算法,实现敏感词的判断 和 过滤

Installation

The preferred way to install this extension is through composer.

Either run

composer require nickbai/sensitive

Usage

1.将敏感词转为二维节点数组

$words=[
    '苹果',
    '香蕉'
];
$nodes =  Utils::words2Node($words);

//[
//    [
//        Node('苹', false),
//        Node('果', true)
//    ],
//    [
//        Node('香', false),
//        Node('蕉', true)
//    ],
//]

2.构建字典树

$tree = new Tree($nodes);
// $tree = new Tree();
// $tree->appendMultiple($nodes)

3.创建敏感词处理类,处理文本

$sensitive = new SensitiveWords($tree);
//$sensitive = new SensitiveWords();
//$sensitive->setTree($tree);

$text = '苹果正好吃,我不爱吃香蕉, 香梨才是王道,香水有毒';
//如果文本包含敏感词,则返回包含的敏感词数组;否则返回false
$res = $sensitive->has($text);

//用指定字符,替换文本中敏感词
$string = $sensitive->filter($text,'#');

例子

//敏感词数组;
$words=['苹果','香蕉'];

$nodes =  Utils::words2Node($words);
$tree = new Tree($nodes);
//如果敏感词数量比较大,字典树构建会比较慢,建议将构建好的字典树进行缓存
$sensitive = new SensitiveWords($tree);

$text = '苹果正好吃,我不爱吃香蕉, 香梨才是王道,香水有毒';
$res = $sensitive->has($text);
$string = $sensitive->filter($text,'#');

统计信息

  • 总下载量: 36
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-03-28