随机化包含特定键->值的对象数组
Randomize array of objects which contains specific key->value
我有一个包含 45 个对象元素的数组,其中包含 id
、name
、is_premium
。
我从 MySQL 收到它们,按 is_premium desc
排序,其中一些在列表末尾有 is_premium = 0
。
如何使用 is_premium=1
随机化元素,同时将 is_premium=0
保持在数组末尾?
尝试一下是否可行:
<?php
//assuming the array of objects is called $array
$new_array = array_merge(
shuffle(
array_filter($array,function($x){return $x['is_premium'] == 1;})
),
array_filter($array,function($x){return $x['is_premium'] == 0;})
);
?>
我有一个包含 45 个对象元素的数组,其中包含 id
、name
、is_premium
。
我从 MySQL 收到它们,按 is_premium desc
排序,其中一些在列表末尾有 is_premium = 0
。
如何使用 is_premium=1
随机化元素,同时将 is_premium=0
保持在数组末尾?
尝试一下是否可行:
<?php
//assuming the array of objects is called $array
$new_array = array_merge(
shuffle(
array_filter($array,function($x){return $x['is_premium'] == 1;})
),
array_filter($array,function($x){return $x['is_premium'] == 0;})
);
?>