微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP foreach数组-保留键

如何解决PHP foreach数组-保留键

我有一个JSON文件,其结构如下所示(非常简化):

__init__

我这样做是为了获取所有对象的数组,但不知道如何保留键“ houses”或“ plot”?

    [
      {
        "customerId": "M12345","houses": [
          {
             "id": "OBJ12345_1731321200","status": {
               "id": "4","name": "Sold"
            },{
            "id": "OBJ12345_1732393235","status": {
              "id": "4","name": "Såld"
            }
          ],"plots": [
          {
            "id": "OBJ12345_1771637082","name": "Sold"
            }
           ],"projects": [],"farms": [],"commercialPropertys": [],"condominiums": [],"foreignProperties": [],"premises": []
       }
    ]

我需要弄清楚如何创建一个数组来保留父键,并将其包括在新数组中...

我正在寻找的结果是这样

    // Create array of all objects  
      $AllEstatesList = array();
        foreach ($GetEstateList[0] as $GetEstateType) { 
            foreach ($GetEstateType as $GetEstate) { 
                if ($GetEstate["id"] != null) {
                    $AllEstatesList[] = $GetEstate;
                }
            }
        }

请帮助! :)

解决方法

创建第一个foreach时要保留每个数组对象的键 循环。语法如下:

foreach ($arr as $key => $value) {
    echo "{$key} => {$value} ";
    print_r($arr);
}

因此,在您的示例中,将是这样的:

// Create array of all objects
  $AllEstatesList = array();
    foreach ($GetEstateList[0] as $EstateType => $GetEstateType) {
        foreach ($GetEstateType as $GetEstate) {
            if ($GetEstate["id"] != null) {
                $GetEstate["type"] = $EstateType;
                $AllEstatesList[] = $GetEstate;
            }
        }
    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。