我有一个选项数组和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];
}
答案 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
数组分别存储您的答案。
我希望它有所帮助