Sorry für die Frage, ich versuche, einige Json-Daten in meiner Datenbank zu speichern. Das Problem ist, ich weiß nicht, wie man irgendeinen der "Parent-Namen" bekommt. Der "Elternname" ist immer der gleiche wie der Kind "Name".PHP - Objektschlüssel von JSON speichern
Preis-data.json
[
{
"Flag": {
"name": "Flag",
"safe_price": "118.31",
"safe_net_price": "110.60",
"total_volume": 3148,
"7_days": {
"median_price": "118.31",
"lowest_price": "100.00",
"highest_price": "132.25",
"volume": 94
}
},
"Pole": {
"name": "Pole",
"safe_price": "81.21",
"safe_net_price": "70.62",
"total_volume": 1,
"7_days": {
"volume": 0
}
},
"Net": {
"name": "Net",
"safe_price": "0.89",
"safe_net_price": "0.84",
"total_volume": 763,
"7_days": {
"median_price": "0.89",
"lowest_price": "0.65",
"highest_price": "1.08",
"volume": 30
}
}
}
]
php
$filename = "price-data.json";
$data = file_get_contents($filename);
$array = json_decode($data, true);
foreach($array as $row)
{
$sql = "INSERT INTO table_all_prices(parent_name, name, safe_price, safe_net_price, total_volume, median_price, lowest_price, highest_price, volume) VALUES (
'".$row["parent_name"]."',
'".$row["parent_name"]["name"]."',
'".$row["parent_name"]["safe_price"]."',
'".$row["parent_name"]["safe_net_price"]."',
'".$row["parent_name"]["total_volume"]."',
'".$row["parent_name"]["7_days"]["median_price"]."',
'".$row["parent_name"]["7_days"]["lowest_price"]."',
'".$row["parent_name"]["7_days"]["highest_price"]."',
'".$row["parent_name"]["7_days"]["volume"]."'
)";
}
echo "All Prices inserted to database";
Wenn Elternname und Kindname immer gleich sind, was ist das Problem? Benutze einfach den doppelten Namen des Kindes. Andernfalls müssen Sie die Funktion 'key()' verwenden, um den Schlüssel aus dem Array abzurufen. –
wo ist das in diesem json 'parent_name: {}' - 'foreach ($ array als $ parent_name => $ row)' vielleicht? – ArtisticPhoenix
Das Problem ist, dass ich nicht weiß, was der parent_name jedes Mal sein wird. @GrzegorzGajda – Alex