从 JSON URL 获取 DOI 值列表
Get the list of DOI value from JSON URL
我有一个简短的 JSON 文件来自 URL
https://api.crossref.org/works?query.title=Tuberculosis+drug&filter=type:journal-article,from-print-pub-date:2010,until-print-pub-date:2010&select=DOI&rows=3
我使用此代码获取 total-results
和 DOI
值的列表
$crossref_api_url = 'https://api.crossref.org/works?query.title=Tuberculosis+drug&filter=type:journal-article,from-print-pub-date:2010,until-print-pub-date:2010&select=DOI&rows=2';
$JSON = file_get_contents($crossref_api_url);
$Array = json_decode($JSON, true);
$items_list = $message->items;
$totalItems = $message->total-results;
echo $totalItems;
for($i = 0; $i < count($items_list ); $i++) {
$doi = $items_list[$i]->items->DOI;
echo $doi;
}
结果出现0
。没有 totalItems
值,DOI
列表。
请帮我找出我代码中的错误。谢谢
正确代码:
$crossref_api_url = 'https://api.crossref.org/works?query.title=Tuberculosis+drug&filter=type:journal-article,from-print-pub-date:2010,until-print-pub-date:2010&select=DOI&rows=2';
$JSON = file_get_contents($crossref_api_url);
$Array = json_decode($JSON, true); // with `true` you decode to ARRAY
$items_list = $Array['message']['items'];
$totalItems = $Array['message']['total-results'];
echo $totalItems;
foreach ($items_list as $item) {
echo $item['DOI'];
}
我有一个简短的 JSON 文件来自 URL
https://api.crossref.org/works?query.title=Tuberculosis+drug&filter=type:journal-article,from-print-pub-date:2010,until-print-pub-date:2010&select=DOI&rows=3
我使用此代码获取 total-results
和 DOI
值的列表
$crossref_api_url = 'https://api.crossref.org/works?query.title=Tuberculosis+drug&filter=type:journal-article,from-print-pub-date:2010,until-print-pub-date:2010&select=DOI&rows=2';
$JSON = file_get_contents($crossref_api_url);
$Array = json_decode($JSON, true);
$items_list = $message->items;
$totalItems = $message->total-results;
echo $totalItems;
for($i = 0; $i < count($items_list ); $i++) {
$doi = $items_list[$i]->items->DOI;
echo $doi;
}
结果出现0
。没有 totalItems
值,DOI
列表。
请帮我找出我代码中的错误。谢谢
正确代码:
$crossref_api_url = 'https://api.crossref.org/works?query.title=Tuberculosis+drug&filter=type:journal-article,from-print-pub-date:2010,until-print-pub-date:2010&select=DOI&rows=2';
$JSON = file_get_contents($crossref_api_url);
$Array = json_decode($JSON, true); // with `true` you decode to ARRAY
$items_list = $Array['message']['items'];
$totalItems = $Array['message']['total-results'];
echo $totalItems;
foreach ($items_list as $item) {
echo $item['DOI'];
}