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

sebster
sebster (18.385 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 (193.207 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 (18.385 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 (193.207 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 (18.385 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 (193.207 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 (18.385 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 (193.207 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 (193.207 point)
www.simitu.dk
Og du får et svar.

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

sebster
sebster (18.385 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

Brug XML output fra API på PHP sider

Oprettet den 1. september 2014 kl. 20.56
mhass giver 200 point for svar | Giv et svar »

For hver time

Oprettet den 27. august 2014 kl. 22.56
kodak giver 200 point for svar | Giv et svar »

Dygtig programmør til PHP/Database søges

Oprettet den 27. august 2014 kl. 22.33
Joon giver 15 point for svar | Giv et svar »






Computerworld

Teaser billede

Atea i kæmpe omstrukturering: Ny topchef indsætter ny ledelse

Interview: Efter fire måneder på posten rykker Ateas nye direktør, Morten Felding, helt rundt på det store selskab. Omstruktureringen koster kendt direktør jobbet. Se hvad Morten Feldings...

CIO

Teaser billede

It-projekterne fejler igen og igen: Forklaringen er ganske pinlig

It skal skabe mere effektive virksomheder og offentlige institutioner, men ender alt for ofte med at skabe problemer. Forklaringen bør give røde ører.

Comon

Teaser billede

Chrome-browseren kommer nu i 64-bit version: Derfor skal du opdatere

En af verdens mest populære browsere har altid haft et problem: Det fandtes kun i en 32-bit version. Men nu er Chrome 64-bit endelig kommet ud af beta og er uden tvivl en opdatering værd.

Channelworld

Teaser billede

Installers' konkurs sender 25 it-folk hjem uden løn

Et halvt år med underskud på driften og millionslagsmål med en kunde tømte kassen hos it-firmaet Installers, som nu har kastet håndklædet i ringen.

White paper

Teaser billede

ITIL og best practices i dagligdagen

Dette Computerworld Tema beskriver, hvad ITIL er, og hvordan det i praksis betaler det sig at ændre alt det, man gør forkert i dagligdagen.



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