使用数组作为数据库构建 php 搜索引擎


Build a php search engine using an array as DB?

新的PHP程序员在这里,如果已经有人问过这个问题,我深表歉意:

我有一个充满字符串的数组。每个字符串都是我网站上页面的确切名称,因此数组是一种"数据库"。

我想知道如何创建一个允许用户输入关键字的搜索引擎。然后,引擎将抓取我的字符串数组以查找任何匹配项,并返回我的网站上在页面名称中包含关键字的页面列表。

任何帮助都值得赞赏,不确定使用哪些功能来构建它。

提前感谢!

我想

你可以使用strpos来查看用户术语是否包含在数组键中。 但是,您必须遍历每个页面,并查看搜索词是否包含在页面名称中。

我解决这个问题的方法是创建一个包含所有字符串的二叉搜索树。这将使搜索更快、更高效。这是一个可以帮助您实现这一目标的链接。

希望这有帮助。

我最终通过使用平面文件和条件解决了这个问题,这是代码:

$userlink = $_POST['link_to_test'];
$linkdatabase = array('...');
if (in_array($userlink, $linkdatabase)) 
{
echo 'Data already exists';
}
else { ....