json in PHP branje arraya
 
fision 23. avg 2011 12:23:07 Pridružen od:
20. jun 2010
65 objav
6 2 3
#1

Preko json_decode dobim array spremenljivko.



Ko izpišem spremenljivko s print_r ($var); dobim naslednji izpis:



stdClass Object

(

[140325172721894] => stdClass Object

(

[id] => 140325172721894

[application] => stdClass Object

(

[=> Silvo

[id] => 241505092000000

)


        [to] => stdClass Object
(
[name] => Mare Niga
[id] => 100002403000000
)

)



Kako dobim iz tega arraya samo vrednost npr. [name] => Mare Niga



Poskusil sem z echo $var->to->name; vendar dobim napako.



Ali kdo ve kakšna je pravilna PHP koda.]()


všeč(0) ni všeč(0) spam(0)
 
FrEaKmAn 23. avg 2011 13:02:51 Pridružen od:
2. dec 2007
303 objav
175 59 0
#2

čuden class, priporočam ko daš print da prej echo-aš <pre> - ti lepše izpiše... glede na to bi dostopal do name preko



$var[140325172721894]->to->name ali nekaj zelo podobnega -en zaklepaj manjka


všeč(0) ni všeč(0) spam(0)
 
fision 23. avg 2011 13:19:45 Pridružen od:
20. jun 2010
65 objav
6 2 3
#3

Sem uporabil <pre> tag, vendar ko prilepim kodo noter na IM mi jo malce drugače prikaže. Res manjka oklepaj, ker sem prikazal samo del izpisa, da ni predolga klobasa.



Strinjam se, da je čuden class ampak to dobim iz facebook-a ko naredim poizvedbo, zato na to nimam vpliva.



Sem poskusil tvojo varianto $var[140325172721894]->to->name in še nekaj podobnih a ne dobim ven nič.


všeč(0) ni všeč(0) spam(0)
 
dunker 23. avg 2011 13:25:20 Pridružen od:
23. apr 2007
261 objav
377 4 1
#4

Po spominu ti predlagam dve stvari:



1.)Priporočam: Pri klicu funkcije jsondecode za drugi parameter podaj "true", torej $var = jsondecode($prejeti_podatki, true);



Na ta način ne boš dobil stdClass objekta, ki zna biti neroden za obdelavo, temveč povsem navaden asociativni array. Tako boš z lahkoto dostopal do podatkov na način $var['140325172721894']['to']['name'] ...



2.) Če vseeno želiš uporabljati stdClass objekt, imam v spominu, da lahko dostopaš do podatkov na način $var->{140325172721894}->{to}->{name} ali nekaj podobnega.



Vso srečo! ;)


všeč(6) ni všeč(0) spam(0)
 
fision 23. avg 2011 13:49:11 Pridružen od:
20. jun 2010
65 objav
6 2 3
#5

The best, dela!



Uporabil sem prvo točko in to je to kar rabim. dobim posamezno vrednost ven. Ful ti hvala.


všeč(0) ni všeč(0) spam(0)
 
dunker 23. avg 2011 14:45:09 Pridružen od:
23. apr 2007
261 objav
377 4 1
#6

Ni panike, z veseljem pomagam. ;)


všeč(3) ni všeč(0) spam(0)
 
 

🔒 Za odgovor na to temo se moraš prijaviti.

Prijavi se