PHP:单词定义脚本?

时间:2009-10-21 06:26:18

标签: php api dictionary definition

我正在开发一个网页,我接受用户输入的单词,当用户提交这些单词时,我想显示这些单词的定义,或者这些单词的维基百科链接,以获得关于该单词的更多定义 - - 类似于以下内容:

假设用户输了5个字:

toast, egg, beans, coffee, tea

现在我想将它们显示为:

toast  › slices of bread that have been toasted
egg    › animal reproductive body consisting of an ovum or embryotogether with nutritive and protective envelopes
beans  › a small skullcap <link to wikipedia>read more on wikipedia</link>
coffee › a beverage consisting of an infusion of ground coffee beans
tea    › a beverage made by steeping tea leaves in water <link to wikipedia>read more on wikipedia</link>

对于维基百科上没有文章的单词,不会显示维基链接。

有人可以建议我使用一些开源PHP脚本或程序包来为我做这个吗?或者,我很感激有关如何在PHP中执行此操作的任何建议。

我更感兴趣的是直接从其他网站获取数据,而不是在我的数据库中存储字词定义。

我正在使用PHP和MySQL。

2 个答案:

答案 0 :(得分:5)

使用explode()函数将用户的清理后的输入分解为单个单词,然后使用Wikipedia API请参阅api.php )获取定义或wiki链接。 /> 应该有其他Web服务,除了维基百科,提供API访问,只有谷歌他们。如果你想在Javascript中制作它,this也可以是一个很好的指南。

总的来说,格式良好的API不依赖于语言。通常它是XML或JSON(参见API Data formats,包含序列化的PHP ),对于XML情况,您可以使用本机PHP SimpleXML(指南here)或{ {3}}库。只是得到&amp;解析!

答案 1 :(得分:5)

我建议您使用Google定义中所选单词的定义。 当你输入define:beans时,你会从google获得这个单词的定义列表。这个谷歌搜索结果来自各种来源,但第一个大多是正确的。

您需要使用Google Search API搜索此单词,解析XML并向用户显示第一个结果。

您可以使用此tutorial

中的Google搜索API

Google Search API Documentation

引用
  

Google AJAX Search API是一个   允许您使用的Javascript库   在您的网页中嵌入Google搜索   和其他Web应用程序。对于Flash,   和其他非Javascript环境,   API公开原始RESTful   返回JSON编码的接口   结果易于处理   大多数语言和运行时。


实施例: define:cow to Google Search API会返回很多定义。 获取搜索结果的第一个元素,解析它并将其显示在单词旁边。