我正在使用平面文件数据库。
好的,为了排除所有“为什么不使用SQL”的问题。我已经使用过了。这是一个个人(学习)项目。我喜欢使用文本文件并想要尝试一下。
因此,我在谷歌和S.O.上搜索了2天,并尝试了许多方法,但它们并不能满足我的需求。但我确实学会了正确的提问方式 :-)
现在<在SQL中,您可以这样做(因为SQL基本上是一个高级数组)
SELECT * FROM [tablename] WHERE `some_field`='user_input1' ORDER BY `sequence_opt`;
我希望在一个包含2000多个记录的数据库中进行操作。(它们已被序列化以便于存储在文本文件中)
目前我做了这个:($data_lib是2000多个记录,每个记录有30个字段,但是以以下形式检索:
$data_lib[1]['a_field_name1']
$data_lib[2]['a_field_name2']
$data_lib[3]['a_field_name3']
$data_lib[4]['a_field_name etc...'])
foreach($data_lib as $linenum=>$row)
$sort[$linenum] = $row['some_field'];
array_multisort($sort,SORT_DESC,$data_lib);
这等同于SELECT * FROM [tablename] ORDER BY `some_field'
它完美地工作。但是我似乎无法通过选择另一个字段作为条件来使用“WHERE”语句。就像第一个SELECT示例中一样。我无法让“WHERE”子句起作用。
现在,我还没有查看的一件事是我读取数据库的原始方式 - 你认为问题出在那里吗? 我尝试过usort,但是那种方法似乎会弄乱字段,而且顺序也不对。
这个网站提供的所有信息都非常棒,我的问题得到了完美的解答。
先谢谢你了!!!