我想显示这样的结果:
$question = array{
array {
'question' => 'Question MCQ',
'answer' => array{
'answer 1',
'answer 2',
'answer 3',
'answer 4',
},
'correct_answer' = 0
},
array {
'question' => 'Question MCA',
'answer' => array{
'answer 1',
'answer 2',
'answer 3',
'answer 4',
},
'correct_answer' = 2
},
array {
'question' => 'Question True and False',
'answer' => array{
'True',
'False',
},
'correct_answer' = 1
},
}
即时正在处理的代码是:
GetQueStionById()
$select = $this->select()
->setIntegrityCheck(false)
->from(array('q' => $this->_name), array('questionID', 'questionDesc'));
$query = $select->query();
$statement = $query->fetchAll();
return $statement;
GETMCQ()
$select = $this->select()
->setIntegrityCheck(false)
->from(array('q' => 'questions'), array('questionID', 'questionDesc'))
->join(array('aq' => 'qanswer'), 'q.questionID = aq.questionID')
->join(array('a' => 'answers'), 'aq.answerID = a.answerID', array('answerID', 'answerDesc', 'isAnswer'));
$query = $select->query();
$stamnt = $query->fetchAll();
return $stamnt;
$getQ = new Questions();
$res = $getQ->getQuestionByID();
$questions = array();
foreach ($res as $que) {
$tmp['question'] = $que->questionDesc;
$res_ans = $getQ->getMcq();
$index = 0;
foreach ($res_ans as $ans) {
$tmp['answer'] = $ans->answerDesc;
if ($ans->isAnswer == 1) {
$tmp['correct_answer'] = $index;
}
$index++;
}
array_push($questions, $tmp);
}
echo "<pre>";
print_r($questions);
'correct_answer'
'correct_answer'
,但其余的原则将相同)。
$getQ = new Questions();
$res = $getQ->getQuestionByID();
$res_ans = $getQ->getMcq();
$questions = array();
foreach ($res as $que) {
$tmp = array();
$tmp['question'] = $que->questionDesc;
$index = 0;
foreach ($res_ans as $ans) {
if ($ans->questionID == $que->questionID){
$tmp['answer'][] = $ans->answerDesc;
if ($ans->isAnswer == 1) {
$tmp['correct_answer'] = $index;
}
$index++;
}
}
array_push($questions, $tmp);
}
echo "<pre>";
print_r($questions);
echo "</pre>";