有没有人知道比简单地编写循环并手动构建数组来执行以下操作更好(更短/更优雅)的方法:
我有一个名为的数组$data
和另一个名为$indicies
. 该$indicies
数组包含一堆索引,我想将它们应用于$data
数组以获取子集。例如,如果我运行array_rand
的元素数量大于 1,我会得到一个索引数组,但我真的想要数据项数组,并且必须循环构建该子集。
我在想可能有一些我不知道的巧妙地减少地图的方法。有人有想法么?这是我现在必须做的一个例子
$indicies = array_rand($data,6); //get 6 random indicies to the data
$subset = array();
foreach($indicies as $index)
$subset[] = $data[$index];
这是类似于我想做的事情
$subset = $data[array_rand($data,6)];