Json_decode probleem....

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Gezocht sociale Full-Stack PHP Developer

Organisatie Je komt te werken in een bedrijf wat 10 jaar geleden is begonnen in de direct marketing maar door de jaren heen is ontwikkelt tot een communicatie en strategie bureau. Dit bedrijf is nu met zo’n 100 medewerkers verdeeld over 7 afdelingen. Ze werken voor verschillende bekende goede doelen en grote scholen. Elke dag wordt er samen gegeten en elke maand hebben zij de “domibo”. Daarnaast organiseert ook de personeelsvereniging verschillende uitjes en om de zomer af te sluiten hebben ze binnenkort een afsluitende BBQ. Functie Je komt te werken in een team van 5 developers op medior en

Bekijk vacature »

PHP Developer

Zit jij goed, of kan het beter als Developer? Jij hebt inmiddels een paar jaar ervaring als (PHP) Developer, en weet hoe het werkt met het aantal coderegels in combinatie met features en functionaliteit. Jij bent hard op weg om een hardcore PHP Developer te worden, en zoekt nu echt de weg naar de perfecte uitdaging waar jij je de komende tijd op kan storten. Zoek je verdieping in de vertaling van requirements naar functioneel werkend design, wil je Core Java nog verder in je vingers krijgen, of lijkt fullstack jou de ideale combinatie? You name it, we got it.

Bekijk vacature »

JAVA Developer

Ben jij klaar voor een nieuwe uitdaging binnen een jong en professioneel online marketingbedrijf met een informele werksfeer? Wij zoeken een JAVA developer Werkzaamheden Ontwikkelen aan een bestaand, omvangrijk backend systeem in Java; Bedenken en ontwikkelen van nieuwe features in teamverband; Je taken zullen mede afhangen van je eigen ervaring en interesses. Profiel Je hebt een passie voor Java; Je bent bekend met SQL; Je vindt code kwaliteit belangrijk; Een passie voor techniek en knappe oplossingen; Je bent gedreven om de nieuwste technieken te leren en toe te passen; Je vindt het leuk om in teamverband te werken met andere

Bekijk vacature »

Senior PHP developer Digital agency

Organisatie Als iets goed is, zichzelf heeft bewezen en een voordeel biedt voor de organisatie of jezelf dan gaan ze het hier gebruiken en implementeren. Er heerst hier een platte organisatiestructuur, houden van snel schakelen en zijn fan van innovatie! In 2005 begonnen ze met de ambitie om hét bureau van Nederland te zijn met de grootste digitale impact. Honderden klanten lieten hun groeien. Samen met ruim 50 collega’s en professionele partners behoren zij tot een van de gaafste Full Service Digital Agencies. Hier werken ze aan open source principes. Ze bouwen voort op universele oplossingen die tijdloos en flexibel

Bekijk vacature »

Ervaren .net ontwikkelaar

Gezocht, ervaren .NET ontwikkelaar bij Idella (onderdeel van de VISMA-groep) Omdat we succesvol zijn en groeien, zijn we op zoek naar ervaren .NET ontwikkelaars voor ons ontwikkelteam. Wat ga je doen als .NET ontwikkelaar? Als .NET ontwikkelaar werk je in Scrum (Agile) teams aan moderne toepassingen voor interne producten van Idella, zoals bijvoorbeeld de software achter “Evi van Lanschot”. Je doet dit op basis van Microsoft .Net (Core), ASP.NET MVC, SQL Server, Web API, WCF, Angular en C#. Uiteraard houd je actief je kennis op peil over hedendaagse technieken en pas je deze kennis direct toe in je werkomgeving. Standplaats

Bekijk vacature »

Junior/Medior .NET Developer

Organisatie Yes, je mag weer naar kantoor! Je loopt door het centrum naar jouw prachtige werklocatie. Eenmaal binnen bedenk je wat je vandaag weer wilt gaan leren. Je komt aan in de grote open ruimte en de HR medewerker groet je vriendelijk. Bij de relax hoek zie jij je collega al met een lekkere bak koffie in zijn handen staan. “Dit wordt weer een productieve en leuke dag. We hebben namelijk een nieuw project binnen gekregen in de energiebranche die wij als team mogen gaan oppakken!” roept je collega. Vol enthousiasme kletsen jullie nog even door en als ook je

Bekijk vacature »

Medior/Senior Frontend Developer Werken binnen een

Voor je zie je de mooie spits toelopende toren waarin jij werkzaam bent. Met het brandende zonnetje nog op je achterhoofd loop je het kantoor binnen. Bij binnenkomst groet je Bianca. Bianca is de vrouw die iedere middag een lekkere biologische lunch verzorgd voor het jouw team. Al binnen lopend zie je het scrumbord hangen, waarop iedere 2 weken een nieuwe sprint wordt opgezet. Deze sprints worden opgezet, omdat jij werkzaam bent bij de grootste online winkel op het gebied van verzorgingsproducten voor jezelf, je gezin, je huisdeur en het huishouden. Doordat jullie als bedrijf zo snel blijven groeien willen

Bekijk vacature »

Junior PHP Developer

Organisatie Het bedrijf zelf is nu 12 jaar geleden ontstaan met als doel alles wat de ondernemer kan bedenken op technisch vlak te kunnen maken. Dat is gelukt en nog veel meer! Inmiddels zijn ze gegroeid tot een team van 40 mensen die elke dag hard werken maar zeker ook plezier hebben met elkaar. De klanten die dit bedrijf heeft varieert sterk. Zo kan de gemiddelde MKB’er klant worden maar hebben ze bijvoorbeeld ook maatwerkapplicatie’s gebouwd voor bekendere multinationals. Dit bedrijf is zowel nationaal als internationaal actief! Functie Je komt te werken op de IT afdeling die is verdeeld in

Bekijk vacature »

Junior Software Developer

Voor een van onze Business Partners in de regio van Amstelveel zijn wij momenteel op zoek naar een Junior Software Developer. Deze organisatie is een van de grootste distribiteurs voor kantoor en bouwmaterialen. In totaal telt het bedrijf zo’n 50FTE waarvan 6FTE het team vormt dat verantwoordelijk is voor de IT tak. Het team bestaat uit 5 ontwikkelaars en een Lead Developer die dagelijks bezig zijn met het (door)ontwikkelen van de software dat met name intern gebruikt wordt. Deze organisatie bestaat inmiddels ruim 30 jaar en heeft ruim 180.000 verschillende artikelen in het assortiment. Een van de grote projecten waar

Bekijk vacature »

Startende .NET Programmeur

Bedrijfsinfo De organisatie is ruim 10 jaar geleden opgericht door 2 vrienden die van hun hobby hun werk wilde maken. Het bedrijf liggend in de regio Den Haag bestaat uit 60 werknemers waarvan 6 front end en 28 back end programmeurs en is gelegen in een grote oude kerk. De core business van het bedrijf is het maken innovatieve maatwerking SAAS-oplossingen voor grote partijen als Thomas Cook, Phillips en ASML. Daarbuiten richten ze zich op een stukje maatwebsites en het ontwerpen van huisstijlen van bedrijven. Bij de high-traffic omgevingen word gebruik gemaakt van .NET Core, Azure IoT-hub en Angular. Functieomschrijving

Bekijk vacature »

Junior PHP Developer Projecten Voor A-merken

Organisatie Je komt te werken in een creatief bedrijf wat in 2007 is opgericht door een online marketeer en een developer. Inmiddels zijn ze uitgegroeid tot een organisatie waar 25 mensen werkzaam zijn. Dagelijks wordt hier gewerkt aan verschillende projecten die zeer uiteenlopen. Je hebt de creatieve marketing duizendpoten die hele campagnes van A tot Z uitdenken en die voor hun klanten opzetten. Je kunt dan denken aan bekendere A-merken maar bijvoorbeeld ook bedrijven in het MKB+ segment. Hiervoor doen ze ook de audio en visuele producties in house maar bijvoorbeeld ook de development. Binnen het bedrijf hangt een frisse

Bekijk vacature »

Front-end Developer in-house Amsterdam

Organisatie Het is dinsdag ochtend, je rijdt de parkeergarage binnen met een ongebruikelijke spanning. De adrenaline giert door je héle lijf. Voorzichtig verminder je snelheid en laat je rustig het gaspedaal onder je rechtervoet vandaan glippen. Je gloednieuwe auto stopt voor de slagboom. Het moment van de waarheid… YES! De update op de applicatie die je gisteren hebt geïntroduceerd werkt! De hardware koppelt direct je nieuwe kentekenplaat aan jouw persoonlijke parkeergarage ID, en je beseft je dat je dag er ineens heel anders uit gaat zien. Geen bug fixing, testing of troubleshooting, maar de hele dag brainstormen over de volgende

Bekijk vacature »

ASP .NET Developer

Onze klant in Alkmaar is een sterk groeiende, innovatieve onderneming in de zakelijke verzekeringswereld met een frisse kijk op online diensten aan zakelijke assurantiekantoren. Dit doen zij met een zelf ontwikkeld web platform voor welke zij een ASP .NET Developer zoeken. Dit platform biedt de verzekeringsadviseur toegang tot het verzekeringsassortiment van verschillende grote verzekeraars. Onze klant is sterk aan het groeien en zijn op weg om hun marktleiderspositie nog verder uit te breiden. Zij vormen een divers en gedreven team bestaande uit ruim 20 medewerkers, met ieder zijn eigen specifieke kennis. Als ASP .NET Developer kun je bij hen veelzijdig

Bekijk vacature »

Medior PHP Developer / Laravel

Organisatie Wil je graag een scrumcertificaat halen, team lead worden of de expert worden in een bepaalde techniek? Hier kan je onbeperkt trainingen volgen! Werk je graag in een jonge organisatie waar de jongste medewerker 24 is en de oudste 36? Vind jij dat kwaliteit het allerbelangrijkst is van je product? Doordat er geen externe deadlines zijn kan je veel tijd aan doorontwikkeling besteden zonder druk van buitenaf te voelen. Deze organisatie draait nu zo’n 10 jaar mee in de financiële sector en begeeft zich hierin met name op de zakelijke markt. Zij bieden een grote variëteit in producten aan,

Bekijk vacature »

Traineeship junior software developer

Zoek jij een stevige uitdaging en de mogelijkheid om veel nieuwe dingen te leren in een dynamisch vakgebied? Doe mee aan ons IT Traineeship en ontwikkel jezelf tot software engineer! Je begint met een opleidingstraject van 2 tot 4 maanden binnen de Sogyo Academy. Hierin ga je aan de slag met verschillende technieken die je op conceptueel niveau leert te overzien en interpreteren. Onderwerpen die aan bod komen zijn o.a. programmeren (Java/C#/Python), Object Oriëntatie, Databases, Webservices & webtechnologieën, Domain Driven Design en Continuous Integration/Continuous Delivery. Sommige van deze onderdelen sluit je af met een examen en bijbehorende certificering. Na de

Bekijk vacature »
Marco van Bommel

Marco van Bommel

15/08/2015 14:19:13
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php

$url
= file_get_contents('https://yts.to/api/v2/list_movies.json?sort_by=date_added&limit=50');
$json = json_decode($url);

// Hoe komt het dat dit niet werkt..
echo "Server Time: " . $json->meta->server_timezone . "<br>";
// Terwijl dit wel gewoon werkt?
echo "Title: " . $json->data->movies[0]->date_uploaded_unix . "<br>";

?>
Gewijzigd op 15/08/2015 14:30:59 door Marco van Bommel
 
PHP hulp

PHP hulp

23/04/2019 07:02:17
Honeypot
 
Marthijn Buijs

Marthijn Buijs

15/08/2015 15:38:01
Quote Anchor link
In de json staat toch echt @meta en geen meta..
 
Marco van Bommel

Marco van Bommel

15/08/2015 15:54:40
Quote Anchor link
Als ik $json->@meta->server_timezone gebruik krijg ik een witte pagina, welke mij verteld een php error is.
 
Thomas van den Heuvel

Thomas van den Heuvel

15/08/2015 16:41:08
Quote Anchor link
Tijd om error_reporting en display_errors aan te zetten dan, een witte pagina vertelt jou (en ons ook) niet zoveel...
 
Marthijn Buijs

Marthijn Buijs

15/08/2015 16:56:41
Quote Anchor link
Misschien werkt dit: $json['@meta']->server_timezone ?
 
Marco van Bommel

Marco van Bommel

15/08/2015 17:10:28
Quote Anchor link
bij
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
error_reporting(E_ALL);


$url = file_get_contents('https://yts.to/api/v2/list_movies.json?sort_by=date_added&limit=50');
$json = json_decode($url);

// Hoe komt het dat dit niet werkt..
echo "Server Time: " . $json->@meta->server_timezone . "<br>";
// Terwijl dit wel gewoon werkt?
echo "Title: " . $json->data->movies[0]->date_uploaded_unix . "<br>";

?>

Quote:
Parse error: syntax error, unexpected '@', expecting T_STRING or T_VARIABLE or '{' or '$' in /xxxx/test.php on line 9




bij
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
error_reporting(E_ALL);


$url = file_get_contents('https://yts.to/api/v2/list_movies.json?sort_by=date_added&limit=50');
$json = json_decode($url);

// Hoe komt het dat dit niet werkt..
echo "Server Time: " . $json->meta->server_timezone . "<br>";
// Terwijl dit wel gewoon werkt?
echo "Title: " . $json->data->movies[0]->date_uploaded_unix . "<br>";

?>

Quote:
notice: Undefined property: stdClass::$meta in /xxx/test.php on line 9
Notice: Trying to get property of non-object in /xxx/test.php on line 9
Gewijzigd op 15/08/2015 17:12:02 door Marco van Bommel
 
Marthijn Buijs

Marthijn Buijs

15/08/2015 17:32:43
Quote Anchor link
Probeer het noi eens met $json['@meta'] ..
 
Marco van Bommel

Marco van Bommel

15/08/2015 17:38:19
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
error_reporting(E_ALL);

$url = file_get_contents('https://yts.to/api/v2/list_movies.json?sort_by=date_added&limit=50');
$json = json_decode($url);

// Hoe komt het dat dit niet werkt..
echo "Server Time: " . $json['@meta']->server_timezone . "<br>";
// Terwijl dit wel gewoon werkt?
echo "Title: " . $json->data->movies[0]->date_uploaded_unix . "<br>";
?>

Quote:
Fatal error: Cannot use object of type stdClass as array in /xxx/test.php on line 9
 
Wouter J

Wouter J

15/08/2015 18:19:34
Quote Anchor link
Zoals je op PHP.net kunt lezen, geeft json_decode() standaard een object terug. $a['...'] is een manier om arrays uit te lezen, dit zou dus niet werken met objecten.

Zoals je ook op PHP.net kunt lezen is @ een operator in PHP (een error control operator om precies te zijn).

Dus er zijn 2 methoden om dit op te lossen:

1. Laat json_decode() een array returnen (zoals uitgelegd staat op PHP.net)
2. Zorg dat @ niet wordt herkent als operator, maar onderdeel van de operator. Dit staat beschreven op PHP.net (lekker eentonige links...):

Quote:
Curly braces may also be used, to clearly delimit the property name. They are most useful when accessing values within a property that contains an array, when the property name is made of mulitple parts, or when the property name contains characters that are not otherwise valid (e.g. from json_decode() or SimpleXML).
Gewijzigd op 15/08/2015 18:19:54 door Wouter J
 
Marthijn Buijs

Marthijn Buijs

15/08/2015 18:20:55
Quote Anchor link
Dan ben ik wel benieuwd hoe mensen dan die 'meta' moeten uitlezen..
 
Eddy E

Eddy E

16/08/2015 17:24:42
Quote Anchor link
Gek idee: als je de file_get_contents() gebruikt eerst de @ weghalen voordat je het als JSON laat decoden?
Tenslotte komt het apenstaartje maar 1x voor... je kan hem dus missen en heeft geen enkel nut.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php

$url
= file_get_contents('https://yts.to/api/v2/list_movies.json?sort_by=date_added&limit=50');
$url = str_replace("@meta", "meta", $url); // deze regel is nieuw
$json = json_decode($url);

?>
Gewijzigd op 16/08/2015 17:27:21 door Eddy E
 
Marthijn Buijs

Marthijn Buijs

16/08/2015 18:59:57
Quote Anchor link
Haahah goed idee van je man, ik had er weer eens niet aan gedacht.. :p
 
Frank Nietbelangrijk

Frank Nietbelangrijk

16/08/2015 19:02:42
Quote Anchor link
JSON omzetten in een array lijkt mij prima?
 
Martin -

Martin -

16/08/2015 19:24:55
Quote Anchor link
Eddy E op 16/08/2015 17:24:42:
Gek idee: als je de file_get_contents() gebruikt eerst de @ weghalen voordat je het als JSON laat decoden?
Tenslotte komt het apenstaartje maar 1x voor... je kan hem dus missen en heeft geen enkel nut.

Ik zou de links die Wouter aangeeft eens doornemen. Je ziet dan dat je geen @ hoeft te verwijderen en gewoon dit kunt doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

$url
  = 'https://yts.to/api/v2/list_movies.json?sort_by=date_added&limit=50';
$json = file_get_contents($url);
$data = json_decode($json);

var_dump($data->{'@meta'});
?>


Edit:
Er zit blijkbaar een bug in het forum. Als je code niet met een ?> afsluit, wordt [ /code ] (zonder de spaties) weergegeven
Gewijzigd op 16/08/2015 19:27:09 door Martin -
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.