Closed Distel04 closed 3 years ago
Hey Distel,
tatsächlich haben wir hier eine Liste im JSON-Objekt gewählt, weil unsere interne Repräsentation der Farmingpreise in einer Liste ist. Deshalb wäre es für uns ungünstig, dies in der API zu einem Objekt zu ändern.
Von dem Aufruf farmingObject[3]["price"]
würde ich dir jedoch abraten, da sich die Reihenfolge der Liste in der Theorie jederzeit ändern kann (Beispielsweise bei neuen Farmingrouten).
Trotzdem hier ein paar kleine Anregungen für Funktionen, die dir das arbeiten an einer Liste vereinfachen können:
foreach ($farmingItems as $farmingItem) {
echo $farmingItem["itemName"] . " hat aktuell einen Preis von " . $farmingItem["price"];
}
Wenn du, wie in deinem Beispiel, nur den Preis von Mehl haben möchtest kann dir so eine Funktion hier bestimmt helfen:
function getFarmingPrice($farmingPrices, $itemName) {
foreach ($farmingPrices as $entry) {
if ($entry["itemName"] == $itemName) {
return $entry["price"];
}
}
return 0;
}
$mehl = getFarmingPrice($array, "Mehl");
Stimmt, dass ist eine gute Idee.
Danke die
Ich hatte eine Idee zu einer Änderung. Mir ist beim programmieren aufgefallen, dass es sehr schnell unübersichtlich wird, wenn man mit den FarmingPreisen arbeitet, weil man nicht weiß, bei welchem Item man gerade ist, weil normale Keys verwendet wurden.
Aktueller Aufruf sieht so aus: farmingObject[3]["price"];
Neuer Aufruf: farmingObject["Meth"]["price"];
Dadurch wüsste man direkt, an welchem Item man gerade arbeitet und es wäre übersichtlicher.