javascript - 在 PHP 中打印嵌套 Json

标签 javascript php json

我正在创建一个简单的 Json 和 PHP MCQ 问答游戏。我在其中创建了一个 json 文件。在 .json 中,所有问题都按如下所述编写。 我可以简单地打印 json 数据......但我所坚持的是 我希望问题选项在前面打印有单选按钮,并且只能选择一个。就像一场真正的MCQ游戏。

我尝试过这样做


    echo "<p>". $value['question'].

        "<pre>".implode("<input type='radio'>",$value['answerChoices'])."</pre>

        </p>";

}

但是这里有一个错误,我可以单击所有单选按钮,并且我们知道每个问题只能单击一个。

这是 json

[

      {
          "number": 1,
          "question": "Eighteen thousandths, written as a decimal, is:",
          "answers": [
              "0.0018",
              "0.018",
              "0.18"
          ],
          "correct_answer": 1
      },
      {
          "number": 2,
          "question": "The next number in the sequence <b>1, 3, 6, 10, </b> is:",
          "answers": [
              "12",
              "13",
              "14",
              "15"
          ],
          "correct_answer": 4
      }
  ]

这是 PHP


$string = file_get_contents("example_10.json");
$json_data = json_decode($string, true);

print_r ($json_data);
print_r ($json_data["SSC"][0]["question"]); 
foreach ($json_data as $key => $value) {

    echo "<p>". $value['question'].

        "<pre>".implode("<input type='radio'>",$value['answerChoices'])."</pre>

        </p>";
}
?>

最佳答案

为了能够仅选择一个单选按钮,您需要为它们提供相同的名称属性。这使得他们属于同一组。你可以做类似的事情

"<input type='radio' name='question" . $value['number'] . "'>"

关于javascript - 在 PHP 中打印嵌套 Json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58692777/

相关文章:

javascript - AngularJS/Json没有ng-repeat,如何显示数据?

javascript - 我无法从 jquery ajax 函数返回 JSON 变量

javascript - 如何使用 Microsoft Bot Builder SDK for Node.js 动态生成对话框?

javascript - 设置可调整大小图像的父级 div 高度

javascript - 在 Apostrophe CMS 中创建自定义图像小部件

php - 不能在常量中使用字符串连接?

sql - 在 SQL 字段中为每个 JSON 元素选择一行/将 JSON 字段转换为行

javascript - 如何防止每个对象出现默认值?只有第一个有效

php - 使用模板发送电子邮件 (Mandrill PHP)

php - 使用php格式化mysql时间戳