繁体   English   中英

将来自多个 API 端点的数据合并到一个数据库中

[英]Merge Data from multiple API Endpoints into one Database

我目前正在构建一个表,用于存储它通过 url 从 api 端点接收的数据。 我想从不同的端点添加额外的列。 数据以 JSON 格式存储,两个数据集有一个共同的键,即项目名称。

我想不出通过相关键合并这两个数据集的方法。 我一个月前才开始编码。 我需要建立一个存储数据的数据库还是我可以用php来做? 我尝试了 mySQL,但我找不到一种方法将数据从 url 加载到我的数据库中。

非常感谢您的帮助!

所以我假装在base.json中有以下数据

[{ "id": 4, "name": "james" }, { "id": 6, "name": "tim" }]

在 2nd.json 中

{ "4": ["flower", "car"], "6": ["house", "server"] }

所以现在下面的 PHP 代码将合并它们

<?php

$api_endpoint = json_decode(file_get_contents('base.json'), true);
$additional = json_decode(file_get_contents('2nd.json'), true);
$merged_data = array();

foreach ($api_endpoint as $data) {
    $merged_data[] = array_merge($data, $additional[$data['id']]);
}

var_dump($merged_data);

结果如下所示:

["0"] => Array(
    ["id"] => int(6)
    ["name"] => str("james")
    ["0"] => str("flower")
    ["1"] => str("car")
)
["1"] => Array(
    ["id"] => int(6)
    ["name"] => str("tim")
    ["0"] => str("house")
    ["1"] => str("server")
)

所以现在您可以使用$merged_data并将其插入到您的数据库中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM