×

一个基于 PHP 的中国商标分类智能检索系统

独孤求败 独孤求败 发表于2026-09-21 08:42:10 浏览52 评论0

抢沙发发表评论

今天给大伙儿推荐一个开源项目 —— 推荐一个 中国商标分类智能检索系统。SBFL 是一套面向中国商标业务的分类智能检索系统,基于《类似商品和服务区分表》——也就是尼斯分类第十二版(2024 文 想深入了解的同学,建议收藏这篇。

项目地址:https://github.com/huahaotech/sbfl

01

PART


项目是什么

项目是什么

SBFL 是一套面向中国商标业务的分类智能检索系统,基于《类似商品和服务区分表》——也就是尼斯分类第十二版(2024 文本)及 NCL12-2025 构建而成。

它解决的核心问题是:商标注册、查询时,人需要在一百多个大类、上万条小类里快速找到「我的商品/服务到底属于哪一类」。SBFL 把这套庞杂的官方分类数据做成可搜索、可筛选、可浏览的网页系统,一句话定位就是——一个「查商标该注册在哪个类」的专业工具站。

它适合商标代理人、企业知识产权部门、以及正在准备注册商标的创业者和个体,用来快速核对商品服务分类、减少因为选错类别导致的驳回风险。

02

PART


项目结构

STRUCTURE · 目录布局

下面用一张目录树,帮你快速摸清这个项目的代码组织方式:

...项目目录

├── api/

│   ├── categories.php

│   ├── detail.php

│   ├── search.php

│   └── test.php

├── static/

│   └── style.css

├── .gitignore

├── .htaccess

├── 404.html

├── 500.html

├── all_categories.php

├── composer.json

├── composer.lock

├── config.php

├── data.sql

├── index.php

├── nginx.conf

├── README.md

└── txt_to_mysql_full.py

03

PART


核心功能

核心功能

•智能中文分词搜索:基于 jieba-php 结巴分词引擎,精准解析中文查询意图

•多维度检索:支持关键词搜索 + 按大类筛选(category)的组合查询

•双视图模式:同一份结果可在卡片视图与表格视图之间切换

•详情弹窗与分页加载:小类详情可展开,长结果集分页拉取

•全文索引优化:依托 MySQL 全文索引,毫秒级返回搜索结果

•零框架依赖:前端为原生 JavaScript,无打包构建,加载速度极快

•安全优先:内置请求速率限制与 SQL 注入防护

•生产就绪:配套完整的错误处理与日志系统

•响应式设计:移动优先,手机与桌面均可用

•键盘快捷键 + 本地存储偏好:提升高频查词效率

•一键返回顶部与平滑过渡动画:优化浏览体验

04

PART


技术栈

TECH STACK · 技术选型

技术
版本
用途
PHP
7.4+
核心后端语言
MySQL
5.7+
关系型数据库,承载分类数据与全文索引
jieba-php
~0.40
中文分词引擎
PDO
-
数据库访问层

前端技术栈:原生 JavaScript(无框架依赖)、CSS3 现代样式与动画、响应式(移动优先)设计。部署依赖 Apache 或 Nginx 以及 Composer。

05

PART


架构设计

架构设计

整体采用经典的「前端页面 + 后端 PHP API + MySQL 存储」三层结构。后端以 PDO 访问数据库,通过 api/ 目录下的 search.php、detail.php、categories.php 等接口对外提供 RESTful 服务能力;前端 index.php、all_categories.php 负责页面渲染与交互,二者通过 JSON 接口解耦。

数据层面,分类表与商品服务明细存入 MySQL,借助全文索引支撑中文检索性能;分词由 jieba-php 在查询时完成。配置上推荐用环境变量(.htaccess / nginx.conf / Shell)注入数据库凭据,避免把 config.local.php 提交进版本库。

06

PART


快速开始

QUICK START · 快速上手

克隆并初始化数据库后即可运行,步骤如下:

...bash

git clone <repository-url>

cd sbfl

composer install

mysql -u root -p << 'EOF'

CREATE DATABASE trademark_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

EOF

mysql -u root -p trademark_db < data.sql

cp config.php config.local.php

随后编辑 config.local.php(或设置 DB_HOST / DB_NAME / DB_USER / DB_PASS 环境变量)填入数据库信息,将 Apache/Nginx 站点根目录指向项目目录即可访问。

07

PART


适用场景

适用场景

谁该用:商标代理机构和企业 IP 部门,在为客户提供注册方案时需要反复核对分类;准备自主注册商标的创业者与个体,用来确认自己的商品/服务落点,降低因类别选错带来的驳回与补正成本。

用在哪:既可作为内部查询工具部署在局域网,也可作为公开的分类查询站点对外提供服务。配合 MySQL 全文索引与可选的 Redis 缓存,即便数据量持续增长也能保持稳定的搜索响应。

///

LAST


写在最后

SUMMARY · 个人观点

感谢大家阅读,个人观点仅供参考,欢迎在评论区发表不同观点。


群贤毕至

访客