我正在尝试访问从此网址返回的JSON中的某些值:https://api.crypto-bridge.org/api/v1/ticker
基本上,我希望能够获得最后一次,音量,问题&出价“id”:“FROST_BTC”(例如)
目前,我只想将这些内容反映到php页面上。
像:
Volume = 0.13
Ask = 0.033
Bid = 0.035
Last = 0.034
由于页面上的数据量很大,我根本不确定如何解决这个问题?任何想法,例子或读物,所以我可以想出这个?
PHP会偏好,但可以尝试/学习任何东西。
答案 0 :(得分:1)
只需使用php curl
尝试这样做<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.crypto-bridge.org/api/v1/ticker",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
$response_array = json_decode($response,1);
}
/*
# JUST FOR DEBUGGING PURPOSE
print '<pre>';
print_r($response_array);
print '</pre>';
*/
foreach($response_array as $k=>$v){
echo "id = {$v['id']}, last = {$v['last']}, volume = {$v['volume']}, ask = {$v['ask']}, bid = {$v['bid']}";
echo PHP_EOL;
}
?>
编辑:根据评论
方式1 :打印第1行后使用break;
foreach($response_array as $k=>$v){
echo "id = {$v['id']}, last = {$v['last']}, volume = {$v['volume']}, ask = {$v['ask']}, bid = {$v['bid']}";
echo PHP_EOL;
break;
}
方式2 抓住第一行,然后使用循环打印
$first_row = $response_array[0];
foreach($first_row as $k=>$v){
echo "$k = $v";
}
方式3 使用array_filter()进行特定行打印
$vacek_required = array_filter($response_array, function ($var) {
return ($var['id'] == 'WGR_BTC');
});
foreach($vacek_required as $k=>$v){
echo "$k = $v";
}