PHP文本数据库的搜索方法
我们提供的服务有:成都网站设计、做网站、成都外贸网站建设公司、微信公众号开发、网站优化、网站认证、稷山ssl等。为成百上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的稷山网站制作公司
searchstr=("/".preg_quote($searchstr)."/");
//$searchstr是查找的关键字
$records=file($file);//获取所有的记录数
//$file是查找的数据文件
$search_reocrds=preg_grep
($searchstr,
$records);//开始查找记录
//$search_reocrds为查找到的记录数
unset($records);
if($search_records){
//开始显示记录,写下你自己的处理程序********************
while
(list
($key,
$val)
=
each
(
$search_records))
{
echo
"$val
";
}
//****************************************************
}
分类: 电脑/网络 程序设计 其他编程语言
问题描述:
我想做一个站内搜索引擎,数据库是用txt的,该用那些函数?或者能给我一格参考的源代码更好
解析:
什么叫数据库是用txt的??
搜索静态网页,可以直接用fopen,file之类函数打开文件,然后用字符串函数strstr等来查询是否含有搜索关键字,最好是用字符串的一些函数,因为eregi等函数在这个问题上的效率要低的多
你的想法很简单,然而用TXT保存数据也只能玩玩而已了,真正工作中肯定很少会用TXT来保存重要数据的。不过用TXT保存数据比MYSQL有一个优势,就是读取或写入的速度会比MYSQL快。
至于你说的怎么在TXT里做搜索,那只能先把TXT里的数据全部读出来,比如保存在数组里,然后你可以用正则来搜索你需要的数据或搜索数组再或搜索字符串形式的来搜索了。等等。
如果想区分行数的话,如果你写入TXT的时候有规则,比如用了换行符,那你在读取TXT的时候就可以用换行符“\n”来分行了。
具体细节很多了,把PHP基础学好,解决问题的思路就会多很多。
再建议还是用PHP+MYSQL吧
希望你早日加入PHPER。
这个简单的办法,就是读取文件,然后分析文件。
用到几个函数:file // file() 将文件作为一个数组返回。数组中的每个单元都是文件中相应的一行。
explode// explodef() 分割字符串,用|分割
然后循环遍历 判断 展示就ok了。
例子://只作参考,没有实际测试,如果还有疑问,请回复。
?php
$data = file('data.txt');
$post = $_POST['search'];
$str = '';
if($data !empty($post)) {
foreach($data as $k = $v) {
$row = explode('|', $v);//array('name', 'age', 'sex');
$name = reset($row);//读取数组的第一个元素
if($post == $name) {
$str = $v;
break;
}
}
echo $str;
}
?
打印一下post全局数组,查看是否只有found的value没有被传输过去
抓下包,看下header头文件里面有没有值
先读取文本文件啊,在文本文件中搜索,如果文本较小的话可以直接用函数查找