2017-06-17 23 views
2

単純な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 

答えて

2

は、それをシャッフル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, 
), 
) 
+0

!どうもありがとうございます! :) – Dejavu

+1

@Dejavu ...あなたも使うことができます: 'list($ array1、$ array2、$ array3)= array_chunk(array_slice($ input、0,9)、3); var_export($ array1); var_export($ array2); var_export($ array3); '別の変数を割り当てたい場合。 – mickmackusa

関連する問題