Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[php] bepaalde data uit json halen.

Pagina: 1
Acties:

  • RareAMV
  • Registratie: November 2012
  • Laatst online: 22-11 10:51
Hallo,

Ik heb een json bestand met daarin informatie over bepaalde statestieken uit team fortress 2, nu weet ik haast niets van json bestanden af, ik weet hoe je een bepaald gedeelte uit het json bestand kunt opvragen, maar ik weet alleen hoe dit moet met unieke namen. Maar nu heb ik een soort array met meerdere mogelijkheden. Ik wil er maar 1 specefiek ding er uit halen.

JSON:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
    "playerstats": {
        "steamID": "XXXXX",
        "gameName": "Team Fortress 2",
        "stats": [
            {
                "name": "Scout.accum.iBuildingsDestroyed",
                "value": 58
            },
            {
                "name": "Scout.accum.iDamageDealt",
                "value": 380164
            },
            {
                "name": "Scout.accum.iDominations",
                "value": 85
            },
            {
                "name": "Scout.accum.iKillAssists",
                "value": 483
            },
                           ]  
        
    }
}


Ik zou dus nu graag bijvoorbeeld alleen de Scout.accum.iKillAssists de value willen weten.

Ik zou het zeer waarderen als iemand mij zou kunnen uitleggen hoe ik dat moet doen.

Al vast bedankt^^.

  • PsychoMantis_NL
  • Registratie: Juli 2011
  • Laatst online: 12:50

PsychoMantis_NL

PSN: PsychoMantis_NL

Met json_decode() zou zo iets redelijk vlot moeten kunnen, je kunt er dan een reguliere array van maken, zodat je iets terugkrijgt in de trend van:
Array(
     'playerstats' => Array(
          'steamID' = 'xxxxx',
          'gameName' = 'Team Fortress 2',
          'stats' = Array(
               [0] = Array(
                    'name' = 'Scout.acumm.ibuildingsdestroyed',
                    'value' = '58'),
               [1] = Array()
               ......
           )
     )
)


Vervolgens kun je met een if/else/switch/while whatever loop wel zoeken naar de juiste data :)

PsychoMantis_NL @ Battlefield || Red Dead Redemption || GTA V


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 22-11 22:46

Creepy

Tactical Espionage Splatterer

Als je zoekt met google op "PHP JSON" kom je echt een flink bak met links tegen. Zat daar niks bruikbaars tussen? De eerste link is http://php.net/manual/en/book.json.php en kijk dan eens naar de json_decode methode.

Die methode had je overigens al zelf gevonden [php] json_decode Trying to get property of non-object ??

[ Voor 23% gewijzigd door Creepy op 05-12-2013 10:10 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • Barryvdh
  • Registratie: Juni 2003
  • Laatst online: 21-11 14:12
Je kan die stats gewoon ombouwen naar een array met stats, zoiets:
*snip* (Neem aan dat de JSON zelf hebt aangepast, want jouw voorbeeld werkt niet, heeft een trailing comma, waardoor het niet werkt met jouw voorbeeld)

[ Voor 37% gewijzigd door Creepy op 05-12-2013 10:43 . Reden: Kant en klare code voorbeelden geven wordt niemand echt wijzer van ;) ]