Oprettet man. d. 14. januar 2013 kl. 09:08:21

sebster
sebster (19.305 point. Point ude: 0)


Træk variabler ud i array fra string.

Hej Eksperter

Jeg har et output from en database via et api som ser således ud:

$output ="[{"id":"100","name":"ditnavn","title":"dintitel"}]

Dette vil jeg gerne kunne hive ud som et array, give variablerne en værdi og sætte det ind i et foreachloop.

Nogle der kan hjælpe?

Skrevet man. d. 14. januar 2013 kl. 11:22:03| #1

jakobdo
jakobdo (195.375 point)
www.simitu.dk
Det ligner json.
Prøv:

$output = '[{"id":"100","name":"ditnavn","title":"dintitel"}]';
$ditarray = json_decode($output);

Skrevet man. d. 14. januar 2013 kl. 11:45:32| #2

sebster
sebster (19.305 point)
Hvis jeg sætter det i et array

foreach ($ditarray as $k => $v) {
    echo "\$ditarray[$k] => $v.\n";
}

Burde den så ikke skrive output?

Er ikke lige så meget ind over json.

Skrevet man. d. 14. januar 2013 kl. 11:51:24| #3

jakobdo
jakobdo (195.375 point)
www.simitu.dk
Det er et objekt.
Prøv at se hvad print_r($ditarray); smider retur. :o)

Skrevet man. d. 14. januar 2013 kl. 12:53:44| #4

sebster
sebster (19.305 point)
ja det er er mit output.
Array ( [0] => stdClass Object ( [id] => 100 [name] => ditnavn [title] => dintitel ) )

Kan godt se det er inde i et object.
Hvordan får jeg kun arrayet frem?

Skrevet man. d. 14. januar 2013 kl. 13:50:09| #5

jakobdo
jakobdo (195.375 point)
www.simitu.dk
Lige i dette tilfælde burde så kunne lave:

<?php

$output = '[{"id":"100","name":"ditnavn","title":"dintitel"}]';
$ditarray = json_decode($output);
$json = $ditarray[0];
echo $json->id;
echo '<br />';
echo $json->name;
echo '<br />';
echo $json->title;

?>

Skrevet man. d. 14. januar 2013 kl. 14:16:43| #6

sebster
sebster (19.305 point)
Det virker fint. Dog skal det siges at jeg skal have denne til at loope så den også tager resten af posterne med fra droppet.

Skrevet man. d. 14. januar 2013 kl. 14:39:24| #7

jakobdo
jakobdo (195.375 point)
www.simitu.dk
$output = '[{"id":"100","name":"ditnavn","title":"dintitel"}]';
$ditarray = json_decode($output);
foreach($ditarray as $json){
  echo $json->id;
  echo '<br />';
  echo $json->name;
  echo '<br />';
  echo $json->title;
}

Skrevet man. d. 14. januar 2013 kl. 14:39:33| #8

jakobdo
jakobdo (195.375 point)
www.simitu.dk
Og du får et svar.

Skrevet man. d. 14. januar 2013 kl. 15:04:51| #9

sebster
sebster (19.305 point)
Tak for hjælpen. Det virker perfekt, og fik også lært lidt undervejs.

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   


Seneste spørgsmål

Dynamics C5 2015 webservice og PHP 5

Oprettet den 4. marts 2015 kl. 13.00
Stadel giver 60 point for svar | Giv et svar »

hvorfor fejler den

Oprettet den 4. marts 2015 kl. 12.40
delphiuser giver 60 point for svar | Giv et svar »

Update mysqli

Oprettet den 2. marts 2015 kl. 15.31
tvilling53 giver 200 point for svar | Giv et svar »






Computerworld

Teaser billede

"Når folk ser min tatovering, spørger de som regel, om den er ægte. Og det er den altså"

"Jeg går vildt meget op i ECM, og det har jeg gjort i 13-14 år. Jeg synes, at det er skidespændende og det sejeste i hele verden, og der er faktisk ikke noget bedre. Jeg har også skrevet en...

CIO

Teaser billede

Google klar med 'Android for Work' - sådan vil Google få virksomhederne til at skifte til Android

Google ser store muligheder for indtjening, hvis selskabet kan få virksomhederne til at vælge Android som mobil-platform. Nu er selskabet klar med særlig 'Android for Work'-løsning.

Comon

Teaser billede

Førstehåndsindtryk: Samsung Galaxy S6 og S6 edge er den helt rigtige vej for Samsung

Samsung Galaxy S6 og S6 Edge er de to nye telefoner fra Samsung, der skal vende den nedadgående kurve for selskabet. Kom med og få vores førstehåndsindtryk.

Channelworld

Teaser billede

Microsoft svinger pisken over sine forhandlere: Flere kunder skal op i skyen

Forhandlere, der sælger abonnementer på Microsofts Office 365, gør ikke nok at sende kunderne op i skyen, mener Microsoft.

White paper

Teaser billede

Sådan når du Kinas stigende antal internetbrugere

Akamais content delivery network, China CDN, åbner døren til Kina for dig.



Udgiver · © 2015 Computerworld A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger