2014-12-20 32 views
0

我有这段代码,但它不起作用。它什么都没显示。PHP:如何获得标题和描述Google Book Api?

<?php 
$item = file_get_contents('https://www.googleapis.com/books/v1/volumes?q=Bowling Alone&maxResults=1'); 

$booktitle = (isset($item->volumeInfo->title) ? $item->volumeInfo->title : false); 
$description = (isset($item->volumeInfo->description) ? $item->volumeInfo->description : false); 

echo "<b>Title:</b> " . $booktitle; 
echo "<b>Description:</b> " . $description; 
?> 

所以,请帮我解决它!另外,这是以更快的速度获得内容的方法吗?非常感谢你 !

+0

没有人能帮助我吗? – Ban

回答

0
<?php 
$item = file_get_contents('https://www.googleapis.com/books/v1/volumes?q=Bowling%20Alone&maxResults=1'); 
$item = json_decode($item); 
$item = reset($item->items); 

$booktitle = (isset($item->volumesInfo->title) ? $item->volumeInfo->title : false); 
$description = (isset($item->volumeInfo->description) ? $item->volumeInfo->description : false); 

echo "<b>Title:</b> " . $booktitle; 
echo "<b>Description:</b> " . $description; 
?> 
0

使它与URL兼容,所以没有空格。你还需要添加一个foreach循环,因为有更多的结果。和JSON结果解码成对象

$item = file_get_contents('https://www.googleapis.com/books/v1/volumes?q=Bowling%20Alone&maxResults=1'); 
$item = json_decode($item); 

foreach ($item->items as $item) { 
    $booktitle = (isset($item->volumesInfo->title) ? $item->volumeInfo->title : false); 
    $description = (isset($item->volumeInfo->description) ? $item->volumeInfo->description : false); 
    echo "<b>Title:</b> " . $booktitle; 
    echo "<b>Description:</b> " . $description; 
} 
+0

你好,它不适合我。另外,我只想获得第一本书的内容。 – Ban

+0

将重置添加到阵列 –

相关问题