加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 使用WordNet创建一个简单的字典

发布时间:2020-12-13 14:12:46 所属栏目:PHP教程 来源:网络整理
导读:我从 http://www.semantilog.org/wn2sql.html开始在MySQL中安装WordNet 我想以与普林斯顿的网页相同的方式显示数据:http://wordnetweb.princeton.edu/perl/webwn?s=car 我如何查询数据库来做到这一点?我正在使用PHP. 根据我从网站上的文档中收集的内容,您
我从 http://www.semantilog.org/wn2sql.html开始在MySQL中安装WordNet

我想以与普林斯顿的网页相同的方式显示数据:http://wordnetweb.princeton.edu/perl/webwn?s=car

我如何查询数据库来做到这一点?我正在使用PHP.

根据我从网站上的文档中收集的内容,您似乎需要查询三个表.

首先你查询单词表,以获得它的wordno,每个单词都有一个唯一的数字.它看起来像这样.

//assuming you've connected to your MySQL db
$word=$_GET['s']; //This variable stores the value given through url
if (ctype_alpha($word)){ // If it's alphabetical
  $word_clean=mysql_real_escape_string($word); //Sanitize it for MySQL
}else{
  //Not a valid word,error handle
  exit();
}
$query='SELECT wordno FROM word WHERE lemma=`$word_clean` LIMIT 1';
$result=mysql_query($query);

接下来,我们需要查询sense表以获取synsetno,它将输出单词的不同含义.例如:can(名词)和can(动词),每个都有一个唯一的数字,即synsetno

MySQL查询将是以下内容:

$query='SELECT synsetno FROM sense WHERE wordno=`$wordno`';

对于从该查询获得的每个结果,您必须查询synset表以获取每个意义的定义. Can(名词)和can(动词)有不同的定义.每个synsetno的查询.

$query='SELECT definition FROM synset WHERE synsetno=`$synset`';

并且presto!你有一本非常酷的字典.但是,CPU需要查询三个表,每个表都有大量记录.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读