我正在开发一个FAQ(常见问题)PHP脚本,我想为用户实现一种搜索常见问题解答的方法。这是一个小脚本,因此我在数组中有类别和常见问题解答,如下所示:
$qa = array();
$qa['Getting Started'] = array(array('What is 1+1?', '2'), array('What is the square root of 16?', 'The square root is 4'));
$qa['Installation'] = array(array('What is 2+2?', '4'), array('What is the square root of 64?', 'The square root is 8'));
现在,我想要做的是从表单中获取搜索查询(使用GET请求)并搜索此数组以查找该搜索查询。我想知道我该怎么做呢?我是否必须先解析搜索查询才能搜索到数组?我是否可以使用array_search()
函数或者我是否必须编写自己的代码来迭代数组?我还想知道使用不同的方法(XML,SQL等)存储常见问题是否更好?
答案 0 :(得分:1)
我会使用数据库来解决类似的问题:
id int not null auto increment primary_key,
question text not null,
answer text not null
然后我会做一个类似查询的地方:
...
WHERE question LIKE '%questionsearchvalue%'
...
答案 1 :(得分:0)
请查看此主题,特别是阅读所有用户的评论。你可能会得到你需要的东西。
http://greengaloshes.cc/2007/04/recursive-multidimensional-array-search-in-php/
答案 2 :(得分:-1)
您可以使用另一种方法来解决它。回应所有FAQ,然后使用jquery highlight插件在html中搜索。