首页 > 解决方案 > 使用 Foreach 函数从数组中回显每个项目

问题描述

我在 PHP JSON 查询方面并没有真正的经验,我很好奇是否有人可以帮助我。

我正在尝试对 JSON 数组中的每种颜色进行 foreach 调用(见下文)。

像这样的东西

foreach($json->data->colors as $color){
  echo '<option value="'.$color.'">'.$color.'</option>';
}

JSON文件

{
    "data": {
        "colors": [
            "Red",
            "Blue",
            "Green",
            "Yellow",
            "Pink"
        ],
        "Shapes": [
            "Square",
            "Rectangle",
            "Circle",
            "Triangle"
        ]
    }
}

任何帮助将不胜感激!

标签: phpjson

解决方案


如果您要解析 JSON 数据,json_decode()请在您的 JSON 字符串上使用。然后像你正在做的那样遍历解析的 JSON 变量。

完整代码:

<?php

$jsonString = '{
    "data": {
        "colors": [
            "Red",
            "Blue",
            "Green",
            "Yellow",
            "Pink"
        ],
        "Shapes": [
            "Square",
            "Rectangle",
            "Circle",
            "Triangle"
        ]
    }
}';

$json = json_decode($jsonString);

echo '<select type="select" name="select">';
foreach($json->data->colors as $color){
  echo '<option value="'.$color.'">'.$color.'</option>';
}
echo '</select>';

?>

推荐阅读