如何在循环中为2D数组赋值?

时间:2016-11-09 10:55:28

标签: php arrays multidimensional-array

我有一个选项数组和1D答案数组,每个问题有3个选项和1个答案。我希望能够随机化$randomOption每行的位置,这就是为什么我试图将它放在2D数组中的原因。不过,我不知道怎么做。

$randomOption = array();

For($x = 0; $x=$noQuestions-1; $x++){
    $randomOption[$x,$x*4] = $options[$x*3];
    $randomOption[$x,$x*4+1] = $options[$x*3+1];
    $randomOption[$x,$x*4+2] = $options[$x*3+2];
    $randomOption[$x,$x*4+3] = $answer[$x];

    echo $randomOption[$x, $x*4];
    echo $randomOption[$x, $x*4+1];
    echo $randomOption[$x, $x*4+2];
    echo $randomOption[$x, $x*4+3];
}

1 个答案:

答案 0 :(得分:0)

伙计,我不知道你在那里写了什么样的代码,但我知道你想做什么。这是一个有效的代码:

blackHole = (TouchBlackHoleView) findViewById(R.id.blackHole);
blackHole.disableTouch(true);

一个示例输出:

// I assume you have some array with questions,their options and answers in it like : array(question, option_array, answer)
$question_option_answer_array = array(array('question1',array('a','b','c'),'a'), array('question2',array('A','B','C'),'B'), array('question3',array('I','II','III'),'I'));
$noQuestions = count($question_option_answer_array);
$options = array();
$answers = array();
for($i=0;$i<$noQuestions;$i++){
  $options[] = $question_option_answer_array[0][1];
  $answers[] = $question_option_answer_array[0][2];
}
$options = array(array('a','b','c'),array('A','B','C'),array('I','II','III'));
$answers = array('a','B','I');
$limit = count($answers);
$mixArray = array();
for($i=0;$i<$limit;$i++){
  shuffle($options[$i]);
  echo 'My Options :<br>';
  foreach($options[$i] as $op){
    echo $op.'<br>';
  }
  echo 'My answer :'.$answers[$i].'<br><br>';
}

它会随时改变。 它每次随机组织您的选项,并且您的答案相对于每个选项保持完整,因为它在不同的数组中。使用My Options : c a b My answer :a My Options : A C B My answer :B My Options : III II I My answer :I 数组为您的选项和$options数组分别存储您的答案。

我希望它有所帮助