【问题标题】:Create multiple arrays with different values from an array从数组中创建具有不同值的多个数组
【发布时间】:2017-11-19 21:23:16
【问题描述】:

我需要从一个简单的 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

【问题讨论】:

    标签: php arrays random slice chunks


    【解决方案1】:

    随机播放,将其截断为 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,
      ),
    )
    

    【讨论】:

    • 当然!太感谢了! :)
    • @Dejavu ...如果要分配单独的变量,也可以使用:list($array1,$array2,$array3)=array_chunk(array_slice($input,0,9),3); var_export($array1); var_export($array2); var_export($array3);
    猜你喜欢
    • 2015-01-19
    • 1970-01-01
    • 1970-01-01
    • 2019-12-15
    • 2015-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    相关资源
    最近更新 更多