从数组中创建具有不同值的多个数组

Create multiple arrays with different values from an array

我需要从一个简单的 php 数组创建 3 个具有 3 个不同随机值的数组。最好的方法是什么?使用 array_rand() 选择随机键然后从数组中过滤键并再次选择另一组随机键?

$input = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16);

示例输出:

array1 : 4, 2, 7
array2 : 8, 3, 15
array3 : 16, 1, 11

将其打乱,将其截断为 9 个元素,将其分成 3 个元素。

代码:(Demo)

$input = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16);
shuffle($input);
var_export(array_chunk(array_slice($input,0,9),3));

可能的输出:

array (
  0 => 
  array (
    0 => 5,
    1 => 2,
    2 => 11,
  ),
  1 => 
  array (
    0 => 3,
    1 => 8,
    2 => 4,
  ),
  2 => 
  array (
    0 => 12,
    1 => 13,
    2 => 15,
  ),
)