Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да анализирам Json данни от openlibrary api? (правилно)

По подразбиране cURL автоматично извежда трансфера. Вашият код показва само съдържанието на json, но curl_exec($cURL) връща 1 или 0, ако нещо се обърка, а не съдържанието на json. Ето защо не можете да получите желания масив или обект с json_decode , JSON низът не е в $result променлива.

За да получите това, което искате, трябва да зададете друга опция за cURL:

curl_setopt($cURL, CURLOPT_RETURNTRANSFER, 1);

По този начин curl_exec($cURL) ще върне прехвърлянето като низ и повече няма да го извежда автоматично.

Вижте ръководството за PHP относно върнатите стойности на curl_exec .

След това трябва да използвате само 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]);
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Плъгини за интеграция на Eclipse/MySQL?

  2. Две колони като първичен ключ в mysql?

  3. PHP PDO bindParam за променлива/низ, използван за IN израз...?

  4. Грешка при инсталиране на Sphinx 2.0.4 с MAMP 2.0:Не мога да намеря MySQL заглавки

  5. преминаване от MySQL към PostgreSQL за Ruby on Rails в името на Heroku