Ve výchozím nastavení cURL
automaticky vytiskne převod. Váš kód zobrazuje pouze obsah json, ale curl_exec($cURL)
vrátí 1 nebo 0, pokud se něco pokazí, a ne obsah json. Proto nemůžete pomocí json_decode
získat požadované pole nebo objekt , řetězec JSON není v $result
proměnná.
Chcete-li získat to, co chcete, musíte nastavit další možnost cURL:
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, 1);
Tímto způsobem curl_exec($cURL)
vrátí přenos jako řetězec a již jej nebude automaticky vydávat.
Viz příručku PHP
o vrácených hodnotách curl_exec
.
Pak stačí použít json_decode
:
foreach (json_decode($result, true) as $book) {
printf("\nISBN: %s\ttitle: %s\tauthor: %s", $book['details']['isbn_10'][0], $book['details']['title'], $book['details']['contributions'][0]);
}