这可能有点问这里,但我想要的是一些简单的方向或PHP排序脚本的例子,以便我可以自己解决。
我有一个网店,我希望我的客户根据价格或产品颜色等变量对产品进行分类。
我正在我网站左侧构建一个菜单,其中包含复选框,人们可以在其中查看要排序的变量。检查框时,页面容器必须刷新,只有符合要求的产品必须可见。有关我想要实现的示例,请参阅http://amzn.to/ryeIjF。
请注意,我的产品的所有属性都存储在mysql数据库中。
答案 0 :(得分:3)
在PHP中对多维数组进行排序实际上并不太难......我认为这就是你要做的事情(按价格,受欢迎程度,最新等等排序)。
假设多维数组$itemsArray
{[
{
"id" : "2643",
"name" : "Leather Jacket",
"price" : "249.99"
},
{
"id" : "2645",
"name" : "Suede Jacket",
"price" : "289.99"
},
...
]}
这可以像......一样排序。
usort($itemsArray, 'sortItemsByPrice');
function sortItemsByPrice($objA, $objB) {
//This function returns a -1, 0, or 1 depending on the order
//of object A and Object B
$aVal=$objA['price'];
$bVal=$objB['price'];
if ($a == $b) {
//or maybe sort on a secondary field
return 0;
}
return ($a < $b) ? 1 : -1;
}
<强>无论其强>
如果可以直接在SQL中排序,请使用SQL语句中的ORDER BY
关键字
//Order by price, lowest->highest
SELECT id,name,price FROM products ORDER BY price
//Order by price, highest->lowest
SELECT id,name,price FROM products ORDER BY price desc
答案 1 :(得分:2)
如果您的数据存储在MySQL数据库中,您可以在查询数据库时对它们进行排序。 http://dev.mysql.com/doc/refman/5.0/en/order-by-optimization.html http://php.net/manual/en/function.sort.php 我认为,如果可能的话,更好的是从源头处理数据。
答案 2 :(得分:1)
PHP不应该为你做排序。你可以向php脚本发出请求,建立一个SQL查询,动态过滤所选的值,并让你的db为你做排序!这就是它的制作和优化!!!
答案 3 :(得分:0)
答案 4 :(得分:0)
在SQL查询中使用Order By 子句,如下所示 订购产品 或者您可以稍后通过首先使用数组检索结果集进行排序 mysql_fetch_array($ result)方法