首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP/MYSQL将句子与关键字匹配吗?

PHP/MYSQL将句子与关键字匹配吗?
EN

Stack Overflow用户
提问于 2017-10-17 03:00:43
回答 1查看 30关注 0票数 0

我有一个文本,可以是255个字符长。我有一个包含关键字的数据库。在PHP或MYSQL中是否有方法测试句子以找到匹配的关键字?(有点像StackOverflow在输入问题后建议标记)

eg.the文本是:

“纽约时报”:寻找突发新闻,多媒体,评论和评论华盛顿,商业,体育,电影,旅游,书籍,工作。

并且说我的mysql数据库包含newspaper, news, book.

我不知道从哪里开始..。什么是最好的方法?

EN

回答 1

Stack Overflow用户

发布于 2017-10-17 03:13:04

我知道你想做与全文索引功能相反的事情。您的数据库包含关键字,而不是要搜索的文本正文。

所以使用MATCH () AGAINST()是行不通的。在数据库中搜索关键字。

您可以将数据库中的关键字提取到PHP脚本中,然后用PHP字符串函数将关键字与文本进行比较。

代码语言:javascript
复制
$stmt = $pdo->query("SELECT word FROM keywords");
while ($row = $stmt->fetchAll()) {
  if (stripos($text, $row["word"])) {
    $found = true;
    break;
  }
}

代码语言:javascript
复制
$stmt = $pdo->query("SELECT GROUP_CONCAT(word SEPARATOR '|') AS pat FROM keywords");
$row = $stmt->fetch();
if (preg_match("/{$row['pat']}/i", $text)) {
    $found = true;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46781828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档