Goed, ik ben al de hele dag aan het klooien met json_decode() onder PHP 5.1.6.
Lokaal, op PHP 5.2.3, werkt het prima wanneer ik onderstaande JSON wil decoden m.b.v. json_decode(). Ik krijg netjes een object terug met de juiste waarden. In PHP 5.1.6 (met de JSON extensie versie 1.2.1) op de server gaat het echter mis; json_decode() returned null op basis van onderstaande JSON. Een kleinere string werkt wel.
In de documentatie op http://nl2.php.net/manual/en/function.json-decode.php staat "This function will return false if the JSON encoded data is deeper than 127 elements.". Ik neem aan dat ze het daar over geneste elementen hebben, dus daar is geen sprake van. Daarnaast krijg ik geen false, maar echt null wanneer ik een gettype doe op de output van json_decode(). Volgens de documentatie zou dit duiden op incorrecte JSON, maar ik heb de JSON door de validator op http://www.jsonlint.com/ gehaald en die meent dat het valide JSON is (ik heb hier verder ook geen invloed op, komt van een externe bron).
Heeft iemand dit eerder aan de hand gehad en enig idee wat er aan de hand zou kunnen zijn? Ik ben het spoor helemaal bijster.
Lokaal, op PHP 5.2.3, werkt het prima wanneer ik onderstaande JSON wil decoden m.b.v. json_decode(). Ik krijg netjes een object terug met de juiste waarden. In PHP 5.1.6 (met de JSON extensie versie 1.2.1) op de server gaat het echter mis; json_decode() returned null op basis van onderstaande JSON. Een kleinere string werkt wel.
In de documentatie op http://nl2.php.net/manual/en/function.json-decode.php staat "This function will return false if the JSON encoded data is deeper than 127 elements.". Ik neem aan dat ze het daar over geneste elementen hebben, dus daar is geen sprake van. Daarnaast krijg ik geen false, maar echt null wanneer ik een gettype doe op de output van json_decode(). Volgens de documentatie zou dit duiden op incorrecte JSON, maar ik heb de JSON door de validator op http://www.jsonlint.com/ gehaald en die meent dat het valide JSON is (ik heb hier verder ook geen invloed op, komt van een externe bron).
Heeft iemand dit eerder aan de hand gehad en enig idee wat er aan de hand zou kunnen zijn? Ik ben het spoor helemaal bijster.
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
| { "gadgets": [ { "author": "Philipp Lenssen", "authorEmail": "philipp.lenssen+widget@gmail.com", "description": "Displays a mini search which results in mini websites to be read on the personalized homepage. This module uses (or abuses) the Google Mobile search service.", "directoryTitle": "", "features": [ ], "screenshot": "http:\/\/blog.outer-court.com\/homepage\/screenshot\/miniweb.jpg", "thumbnail": "", "title": "Mini Web", "titleUrl": "http:\/\/blog.outer-court.com", "authorAffiliation": "Google Blogoscoped", "authorLocation": "Stuttgart, Germany", "authorPhoto": "", "authorAboutme": "", "authorQuote": "", "authorLink": "", "showInDirectory": "", "showStats": "", "width": "", "height": "190", "categories": [ "", "" ], "singleton": "", "scaling": "", "scrolling": "true", "links": [ ], "views": { "profile": { "name": "profile", "type": "URL", "href": "http:\/\/www.google.com\/xhtml", "quirks": true, "view": "", "preferedHeight": "", "preferedWidth": "", "rewrittenContent": null } }, "moduleId": "1", "url": "http:\/\/blog.outer-court.com\/homepage\/miniweb.xml", "iframeUrl": "\/gadgets\/ifr?container=nuik&v=6bc9235454dc5283f85f97cb4fdc9436〈=nl&country=NL&view=profile&url=http%3A%2F%2Fblog.outer-court.com%2Fhomepage%2Fminiweb.xml", "userPrefs": [ ] } ] } |