1
    foreach ($studentData['questions'] as $questionId => $questionData) {



        echo '<h3>'.$questionData['questionno'].': '.$questionData['content'].'</h3>';

}

上面的代码可以显示 3 个问题,例如:

  1. 什么是2+2?
  2. 什么是3+3?
  3. 什么是4+4?

现在我想要做的是执行计数以确定有多少问题,所以我做了下面的代码:

    foreach ($studentData['questions'] as $questionId => $questionData) {

$noofquestions = count($questionData['questionno']);

        echo '<h3>'.$questionData['questionno'].': '.$questionData['content'].'</h3>';

}

但问题是,它不是输出3而是$noofquestions输出1。为什么是这样?

我还想计算Fully Correct显示的次数$noofcorrect和分别显示的次数Not Correct / Not Fully Correct,但不确定如何使用下面的代码来确定这一点:

    <?php

    if($check)
{
    echo '<p class="green"><strong>Fully Correct</strong></p>';
}
else
{
    echo '<p class="red"><strong>Not Correct / Not Fully Correct</strong></p>';
}
4

2 回答 2

1

请执行下列操作

$count=0;
foreach ($studentData['questions'] as $questionId => $questionData) 
{

    $count += 1;

    echo '<h3>'.$questionData['questionno'].': '.$questionData['content'].'</h3>';

}

echo $count;
于 2013-03-08T05:51:33.820 回答
0

您正在调用count作为问题编号的字符串。为什么它不返回数组的计数会让您感到惊讶?

放在循环$noofquestions = count($studentData['questions']);之前。foreach

于 2013-03-08T05:36:42.813 回答