PHP数据库数组特定的顺序

时间:2014-07-22 20:40:54

标签: php arrays sorting

我的网站上有一个页面,以3x3平铺布局显示产品类别。

目前,我从数据库中获取了不同的产品类别,并在返回的数组上循环显示9个图块。

这一切都正常,但瓷砖的当前顺序是按字母顺序排列的。客户刚刚回来要求以非常具体的顺序让他们这么做,我一遍又一遍地困惑于如何实现这一点。

当前订单:

Agri, Bespoke, Dairy, Farm, Forest, General, Grain, One off, Red Meat

订购通缉:

Dairy, Red Meat, Forest, Grain, General, Farm, Bespoke, One off, Agri

有人能指出我正确的方向来实现这个目标吗?

2 个答案:

答案 0 :(得分:0)

我的理解是数据库将按照添加的顺序返回数据,除非另有说明。

您可以在查询末尾添加ORDER BY X以对其进行排序。如果不存在可以为您提供该订单的列,则可以添加此类列。

答案 1 :(得分:0)

我想如果你不能添加一个具有正确序列的新列,这真的是首选方法,你可以这样做:

SELECT DISTINCT Category FROM Products
ORDER BY
(Category='Dairy') DESC, (Category='Red Meat') DESC, (Category = 'Forest') DESC

......等等。这是一种非常奇怪的方式,但它似乎完成了工作。