我想通过这些键值重新排列数组。让我解释。请检查我的数组值
Array
(
[0] => stdClass Object
(
[user_id] => 103
[recipe_id] => 90
)
[1] => stdClass Object
(
[user_id] => 103
[recipe_id] => 90
)
[2] => stdClass Object
(
[user_id] => 103
[recipe_id] => 64
)
[3] => stdClass Object
(
[user_id] => 103
[recipe_id] => 90
)
[4] => stdClass Object
(
[user_id] => 103
[recipe_id] => 64
)
)
这是我的数组结果,我希望通过关键cipal_id重新排列它。他们将一起使用哪个cipal_id。这样
Array
(
[0] => stdClass Object
(
[user_id] => 103
[recipe_id] => 90
)
[1] => stdClass Object
(
[user_id] => 103
[recipe_id] => 90
)
[2] => stdClass Object
(
[user_id] => 103
[recipe_id] => 90
)
[3] => stdClass Object
(
[user_id] => 103
[recipe_id] => 64
)
[4] => stdClass Object
(
[user_id] => 103
[recipe_id] => 64
)
)
如何排列此数组值??我想显示数组结果,就像上面的例子一样。有什么办法可以用相同的键值重新排列我的数组。
预先感谢
答案 0 :(得分:3)
尝试
$sorted = collect($array)
->sortByDesc('recipe_id')
->values()
->all();
如果您想将它们除以recipe_id,可以使用
$grouped = collect($array)
->groupBy('recipe_id')
->toArray();
答案 1 :(得分:0)
您可以按照以下方式使用php usort函数。
$ java -Xmx6G -cp "~/webgraph-deps/*" it.unimi.dsi.webgraph.ASCIIGraph
答案 2 :(得分:0)
首先将对象转换为数组形式
json_decode(json_encode(json_decode($arr_value_list)), true);
// $arr_value_list is values array
然后使用以下函数对值进行排序
$ key_name ='user_id';
usort($arr_value_list, function ($a, $b) use(&$key_name)
{
return $a[$name] - $b[$name];
});
通过print_r($ arr_value_list);获得输出