Avatar billede themapplz Nybegynder
14. januar 2010 - 14:32 Der er 5 kommentarer og
1 løsning

xml til json konvertering

Hej
Jeg har et problem med konvertering af CURL-modtaget xml til json.
jeg får en udmærket xml string, som jeg laver om til et objekt med simplexml_load_string.
Jeg forsøger derpå at omdanne den til json vha json_encode, men får en  string, der er fyldt med @-tegn

f.eks.
$json = '{"@attributes":{"requests":"147","stat":"ok","version":"1.0"},"exactresults":{"

osv..

Jeg synes ikke jeg kan få adgang til de indeholdende attributter vha. f.eks.
$json['attributes']['requests'] eller
$json['@attributes']['requests']

Er der noget jeg har overset? Hvad gør jeg galt? Skal jeg undlade at bruge simplexml_load_string? Hjælp!
Er der en anden og smartere måde at få adgang til xml'ens keys og values på? Det er en heftig og tung xml-fil og jeg synes at json plejer at klare ærterne, men det her driller..

PF TAK! :)

Themapplz
Avatar billede showsource Seniormester
14. januar 2010 - 15:56 #1
Kender ikke json, men måske en utf8_encode af string før json ?
Er ret sikker på at php forventer en utf8 fil/indhold
Avatar billede intenz Novice
14. januar 2010 - 16:38 #2
Det kan være du kan lure den ved at var_dump af $json efter json_decode (hvis den del ikke fejler).
var_dump($json);

Når specialtegn laver rod, kan disse funktioner nogle gange være brugbare på json dataet (ved dog ikke hvordan det vil reagere hvis specialtegnet er i array key):
http://php.net/manual/en/function.htmlentities.php
http://www.php.net/manual/en/function.html-entity-decode.php

Det er hvad jeg lige kan finde på.
Avatar billede dkfire Nybegynder
15. januar 2010 - 15:37 #3
Jeg kan ikke helt forstå hvorfor du vil lave dit xml object om til JSON.
Hvis du bare vil have adgang til værdierne i din xml, hvorfor bruger du så ikke "bare" xml objektet eller er det fordi du vil sende data videre til en html side med ajax ?
Avatar billede themapplz Nybegynder
15. januar 2010 - 21:58 #4
Jeg siger mange tak til jer alle..
finder på noget..jQuery parsexml?
Avatar billede dkfire Nybegynder
16. januar 2010 - 14:15 #5
Ja det gøre der sikkert, men så længe du ikke fortæller hvad du skal bruge det til er det lidt svært at rådgive dig.

Hvis du "bare" skal have fat i xml data skal du slet ikke bruge JSON eller jQuery, burg SimpelXML, http://dk.php.net/manual/en/simplexml.examples-basic.php, eller XML parser, http://dk.php.net/manual/en/function.xml-parse-into-struct.php,
Avatar billede themapplz Nybegynder
14. september 2011 - 15:35 #6
tak til dkfire
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester