我正在使用https://github.com/brunogaspar/cartify库来管理我的购物车。事情很好,除了我需要能够通过array
密钥price
DESC
中包含的项目进行排序
如果我使用的是Cartify::cart()->contents()
,则以下是其中一个项目的示例:
array(
'id' => 'sku_123ABC',
'qty' => 1,
'price' => 39.95,
'name' => 'T-Shirt',
'options' => array(
'size' => 'L',
'color' => 'Red'
)
正如你所看到的,有一个price
密钥......如果我不能在类级别上排序,我将不得不在事后对这些项进行排序。
答案 0 :(得分:1)
您可以使用usort
和自定义比较功能执行此操作。像这样:
usort($myArray, function ($a, $b) {
if ($a['price'] == $b['price']) {
return 0;
}
return ($a['price'] < $b['price']) ? 1 : -1;
});
不是将密钥硬编码到sort函数中的最优雅的解决方案,但它可以工作。