我在使用php语言解析此url时遇到问题。我不知道它是JSON还是普通的API。我需要从每个人那里得到“询问”和“出价”。非常感谢你。
http://www.fxgrow.com/quotes/quotes.php
它的结构是这样的:
{
EURUSD: {
dir: 1,
ask: "1.13729",
bid: "1.13724"
},
USDJPY: {
dir: 1,
ask: "119.365",
bid: "119.359"
},
USDCHF: {
dir: 1,
ask: "0.94013",
bid: "0.93994"
},
GBPUSD: {
dir: 1,
ask: "1.54218",
bid: "1.54209"
},
AUDUSD: {
dir: 1,
ask: "0.77979",
bid: "0.77973"
},
NZDUSD: {
dir: 1,
ask: "0.75103",
bid: "0.75092"
},
GBPJPY: {
dir: 1,
ask: "184.081",
bid: "184.064"
},
EURGBP: {
dir: 1,
ask: "0.73749",
bid: "0.73743"
}
答案 0 :(得分:1)
$json = file_get_contents('http://www.fxgrow.com/quotes/quotes.php');
$data = json_decode($json);
foreach ($data as $key => $value) {
echo $key . ": ask = " .$value->ask ." | bid =".$value->bid . " <br />";
}
答案 1 :(得分:0)
只需使用json_decode即可。然后,您可以将数据作为对象访问,例如
$data = file_get_contents('http://www.fxgrow.com/quotes/quotes.php');
$decoded = json_decode($data);
print_r($decoded);
print '<p>EURUSD ask: ' . $decoded->EURUSD->ask . '</p>';
答案 2 :(得分:0)
它是纯json格式的数据,因此您可以使用内置函数对其进行解析。
$data=' { EURUSD: { dir: 1, ask: "1.13729", bid: "1.13724" }, USDJPY: { dir: 1, ask: "119.365", bid: "119.359" }, USDCHF: { dir: 1, ask: "0.94013", bid: "0.93994" }, GBPUSD: { dir: 1, ask: "1.54218", bid: "1.54209" }, AUDUSD: { dir: 1, ask: "0.77979", bid: "0.77973" }, NZDUSD: { dir: 1, ask: "0.75103", bid: "0.75092" }, GBPJPY: { dir: 1, ask: "184.081", bid: "184.064" }, EURGBP: { dir: 1, ask: "0.73749", bid: "0.73743" }';
$json=(object)json_decode( $data, true );
foreach( $json as $key => $value ){
$o=(object)$value;
echo $key.' '.$o->dir.' '.$o->ask.' '.$o->bid.'<br />';
}
答案 3 :(得分:0)
试试这个..
<?php
$test='{"EURUSD":{"dir":1,"ask":"1.14498","bid":"1.14492"},"USDJPY":{"dir":1,"ask":"118.729","bid":"118.724"},"USDCHF":{"dir":1,"ask":"0.93974","bid":"0.93944"},"GBPUSD":{"dir":1,"ask":"1.54587","bid":"1.54579"},"AUDUSD":{"dir":1,"ask":"0.77758","bid":"0.77754"},"NZDUSD":{"dir":1,"ask":"0.75293","bid":"0.75283"},"GBPJPY":{"dir":0,"ask":"183.540","bid":"183.525"},"EURGBP":{"dir":1,"ask":"0.74076","bid":"0.74063"}}';
$data=json_decode($test ,true);
foreach($data as $value)
{
$array=array();
$array[]=$value;
foreach($array as $val)
{
echo $val['ask']."</br>";
echo $val['bid']."</br>";
}
}