【问题标题】:Looping Data from json using foreach (PHP) [duplicate]使用foreach(PHP)从json循环数据[重复]
【发布时间】:2020-06-26 23:06:09
【问题描述】:

我有以下 json。

[{
    "id": 2,
    "date": {
        "1": "20-01-2012",
        "2": "21-01-2012",
        "3": "22-01-2012",
        "4": "23-01-2012",
    },
    "type":"Open",
    "url":"http://placehold.it/40x60/0bf/fff&text=A"
}
]

我试图使用带有上述 json 的仅 foreach 日期进行下拉。 看起来应该是这样的。

<select id="cars">
  <option value="1">20-01-2012</option>
  <option value="2">21-01-2012</option>
  <option value="3">22-01-2012</option>
  <option value="4">23-01-2012</option>
</select>

有什么想法吗?谢谢

【问题讨论】:

  • 执行json_decode() 并循环并回显date 键.. 但更重要的是你需要尝试一些东西

标签: php json


【解决方案1】:

所以我注意到你的 json 有问题。第 4 个日期后面有一个逗号。但是一旦你删除它,这段代码就可以工作了

<?php
$json = '[{
    "id": 2,
    "date": {
        "1": "20-01-2012",
        "2": "21-01-2012",
        "3": "22-01-2012",
        "4": "23-01-2012"
    },
    "type":"Open",
    "url":"http://placehold.it/40x60/0bf/fff&text=A"
}]';

$json = json_decode($json,true);

?>

<select id="cars">
    <?php

       foreach ($json[0]['date'] as $k => $v) {

          echo '<option value="'.$k.'">'.$v.'</option>';
       }
    ?>

</select>

尝试运行它here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-26
    • 1970-01-01
    • 2015-09-21
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多