szwsuny/swfilter
Composer 安装命令:
composer require szwsuny/swfilter
包简介
Sensitive Word Filtering
README 文档
README
Sensitive Word Filtering
这是一个PHP版本的AC自动机,没有啥目的性,就是看到其他语言的实现特别多就做了一个,很简单。 关键词树被缓存在Scope文件夹下,使用前先要建立这个缓存文档。
依赖
* PHP >= 7
效率
在test文件下 add.php 有6000个敏感词汇,你可以直接执行,然后执行 filter.php 平均效率在 0.01秒。(macbook pro i5)
使用方式
* 可以参考test目录
* 过滤/查找 前要先添加关键词缓存。
引入项目
require __DIR__ . '/../vendor/autoload.php'; //注意调整所在目录位置
use SzwSuny\SW\Filter\SwFilter;
声明对象
$swFilter = new SwFilter();
设定范围
$swFilter->setScope('短信类'); //你可以理解为词库的分类,这样你可拥有多个过滤词库,想用哪个用哪个。
添加词
$swFilter->adds($words); //这个批量添加,$words是个词数组
$swFilter->add($word); //这个就是一个一个加。
保存词库
$swFilter->save(); //添加词完事后一定要保存,才可以使用。
获得匹配到的词
$swFilter->getMatchWords('这个是要匹配的内容或者文章'); //返回匹配到的词数组
过滤掉匹配的词
$result = $swFilter->filter('这个是要匹配的内容或者文章','*'); //最后这个 * 符号,敏感词将会被替换成它,3个字就是 *** 2个字就是 **
版本号说明
xx.xx.0 最后一位为0是正式版
xx.xx.1-99 这种属于测试版本
更新
2019年02月1日 1.1.0
发布正式版本
2019年02月05日 1.1.3
替换成ac自动机,修复词汇匹配不到的问题,需要重新生成词库。
2019年02月05日 1.1.4
又修复了一下bug
2019年02月05日 1.1.5
新增一个函数,解决长词中包含短词的匹配不到问题,正在考虑是否转为正式使用。使用请看overMatch.php
sunzhiwei 2019-2-1
szwsuny/swfilter 适用场景与选型建议
szwsuny/swfilter 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 6 次下载、GitHub Stars 达 1, 最近一次更新时间为 2019 年 02 月 01 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「php」 「filter」 「swfilter」 「Sensitive Word Filtering」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 szwsuny/swfilter 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 szwsuny/swfilter 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 szwsuny/swfilter 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Nova searchable filter for belongsTo relationships.
Symfony DataGridBundle
Data provider for yii2
This Laravel Nova package allows you to detach filters from the filter dropdown
Laravel filter elequent
Laravel filter elequent
统计信息
- 总下载量: 6
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 18
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-02-01