[PHP] String echo'en in Array

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • DennusB
  • Registratie: Mei 2006
  • Niet online
Hi,

Ik zit iets waar ik even niet uitkom...
Ik wil iets uit een object echo'en, dit werkt prima :

code:
1
echo $json->test;


Maar het veld wat in de array zit is dynamisch en moet ik dus ook meegeven :

code:
1
echo $json->$veld;


Werkt dus niet.... iemand enig idee hoe ik dit kan fixen? Ik kan het niet vinden op Google (wss omdat ik niet goed weet waar op te zoeken..)

Owner of DBIT Consultancy | DJ BassBrewer


Acties:
  • 0 Henk 'm!

  • Radiant
  • Registratie: Juli 2003
  • Niet online

Radiant

Certified MS Bob Administrator

Is het nou een array of een object? Maar je tweede snippet zou in ieder geval moeten werken voor objecten.

Doe eens een var_dump($json); en echo $veld, dan weet je of het klopt wat je doet.

Acties:
  • 0 Henk 'm!

  • DennusB
  • Registratie: Mei 2006
  • Niet online
Radiant schreef op donderdag 05 februari 2015 @ 11:51:
Is het nou een array of een object? Maar je tweede snippet zou in ieder geval moeten werken voor objecten.

Doe eens een var_dump($json); en echo $veld, dan weet je of het klopt wat je doet.
Het is een object in een array. Die $json is een array en daar zit een object in :)

Owner of DBIT Consultancy | DJ BassBrewer


Acties:
  • 0 Henk 'm!

  • Radiant
  • Registratie: Juli 2003
  • Niet online

Radiant

Certified MS Bob Administrator

Zoals je hem nu uitleest is het in ieder geval geen array. Bedoel je dan niet iets van $json[0]->$veld? Dat zou je met var_dump gewoon moeten zien.

Acties:
  • 0 Henk 'm!

  • DennusB
  • Registratie: Mei 2006
  • Niet online
Radiant schreef op donderdag 05 februari 2015 @ 11:56:
Zoals je hem nu uitleest is het in ieder geval geen array. Bedoel je dan niet iets van $json\[0]->$veld? Dat zou je met var_dump gewoon moeten zien.
Dan komt dit er uit :

code:
1
array(1) { [0]=> object(stdClass)#1 (6) { ["name"]=> string(37) "Supportability/RequestSampler/samples" ["begin"]=> string(20) "2015-02-05T10:00:00Z" ["end"]=> string(20) "2015-02-05T10:01:00Z" ["app"]=> string(12) "PHP" ["agent_id"]=> int(5986666) ["average_exclusive_time"]=> float(0) } }

Owner of DBIT Consultancy | DJ BassBrewer


Acties:
  • 0 Henk 'm!

  • Bapawe
  • Registratie: September 2003
  • Laatst online: 12-10 23:56
Geen idee wat je bedoeld, maar misschien bedoel je het onderstaande:
PHP:
1
echo $json->{$veld};

www.twitch.tv/bapawe | www.twitter.com/bapawe


Acties:
  • 0 Henk 'm!

  • DennusB
  • Registratie: Mei 2006
  • Niet online
Trivian schreef op donderdag 05 februari 2015 @ 11:59:
Geen idee wat je bedoeld, maar misschien bedoel je het onderstaande:
PHP:
1
echo $json->{$veld};
Nope, ook dat werkt niet...
Wat ik bedoel is vrij simpel, in die array (en daarna in het object) zitten een paar velden. Maar die zijn dynamisch, dus ik krijg telkens andere velden terug. Dus ik kan niet een simpele $json->veldwatikwilhebben doen, want dat veld heet telkens anders. Ik moet dat veld dus als een var op kunnen geven

Owner of DBIT Consultancy | DJ BassBrewer


Acties:
  • 0 Henk 'm!

  • Gtoniser
  • Registratie: Januari 2008
  • Laatst online: 03:00
Aan je array te zien zul je
code:
1
$json[0]->{$veld}
moeten gebruiken of
PHP:
1
2
3
foreach($array as $obj){
echo $obj->{$veld};
}

[ Voor 31% gewijzigd door Gtoniser op 05-02-2015 12:06 ]


Acties:
  • 0 Henk 'm!

  • Radiant
  • Registratie: Juli 2003
  • Niet online

Radiant

Certified MS Bob Administrator

Dat ja. Is ook logisch.. in $json staat een array, dus je moet eerst een bepaalde member in die array aanspreken, die kies je met die blokhaken en vervolgens heb je daar je object.

Snap dan niet dat je zegt dat $json->name wel werkt, dat zou dan ook fout zijn in ieder geval.. Maar dat zou weer een of andere vreemde taalquirck van PHP kunnen zijn.

Acties:
  • 0 Henk 'm!

  • DennusB
  • Registratie: Mei 2006
  • Niet online
Radiant schreef op donderdag 05 februari 2015 @ 12:08:
Dat ja. Is ook logisch.. in $json staat een array, dus je moet eerst een bepaalde member in die array aanspreken, die kies je met die blokhaken en vervolgens heb je daar je object.

Snap dan niet dat je zegt dat $json->name wel werkt, dat zou dan ook fout zijn in ieder geval.. Maar dat zou weer een of andere vreemde taalquirck van PHP kunnen zijn.
Vaag idd, die eerste werkte idd wel. Nu met die blokhaken werkt het wel zoals ik het wil! Vaag :P Bedankt in ieder geval :)

Owner of DBIT Consultancy | DJ BassBrewer

Pagina: 1