我正在尝试根据从 MySQL 数据库中的列中使用通配符选择的结果创建一个列表。我能够做到,但它似乎很慢,而且可能是错误的方式。这是我现在正在修改的代码
$optarr = array("leather", "cruise", "tint", "sunroof", "moonroof", "navigation", "antilock");
foreach ($optarr as $i) {
$refquery = "SELECT stock, COUNT(stock) FROM vehicle_list AND options LIKE '%$i%'";
$refresult = mysql_query($refquery) or die(mysql_error());
$row = mysql_fetch_array($refresult);
if ($row['COUNT(stock)'] != '0') {
echo "".ucfirst($i)." (".$row['COUNT(stock)'].")<br />";
}
}
这将输出以下内容
Leather(234)
Cruise(343)
Tint(231)
Sunroof(343)
.....
该列表最终将包含大约 20-30 个不同的过滤器选项,现在在 4-5 时,我可以看到相当长的延迟。我做错了什么,只是不知道是什么。也许整个方法?
数据库中的选项列是由 @ 符号分隔的整个文本块,因此我使用 Like 通配符来提取车辆选项。
谢谢!