在php中循环此数组的最佳方法

在php中循环此数组的最佳方法,php,arrays,loops,Php,Arrays,Loops,当我使用print\r()时,我有一个比特币的api调用返回这个参数,那么最好的循环方式是什么,以便我可以使用数据生成一个表或图表 [{"volume": 1E+1, "timestamp": 1301982430, "symbol": "mtgoxUSD", "price": 0.62}, {"volume": 1E+1, "timestamp": 1301982430, "symbol": "mtgoxUSD", "price": 0.62}, {"volume": 31, "times

当我使用
print\r()
时,我有一个比特币的api调用返回这个参数,那么最好的循环方式是什么,以便我可以使用数据生成一个表或图表

[{"volume": 1E+1, "timestamp": 1301982430, "symbol": "mtgoxUSD", "price": 0.62}, 
{"volume": 1E+1, "timestamp": 1301982430, "symbol": "mtgoxUSD", "price": 0.62}, 
{"volume": 31, "timestamp": 1301981474, "symbol": "mtgoxUSD", "price": 0.64}, 
{"volume": 8.592, "timestamp": 1301981466, "symbol": "mtgoxUSD", "price": 0.6401}, 
{"volume": 10.89, "timestamp": 1301981466, "symbol": "mtgoxUSD", "price": 0.6401}, 
{"volume": 9.61, "timestamp": 1301981066, "symbol": "mtgoxUSD", "price": 0.641},
{"volume": 1E+1, "timestamp": 1301981058, "symbol": "mtgoxUSD", "price": 0.641}, 
{"volume": 21.654, "timestamp": 1301981058, "symbol": "mtgoxUSD", "price": 0.641},
{"volume": 2E+1, "timestamp": 1301980388, "symbol": "mtgoxUSD", "price": 0.6729}, 
{"volume": 1E+1, "timestamp": 1301980373, "symbol": "mtgoxUSD", "price": 0.641}]

数组看起来像是json编码的,你必须用它来解码

并使用foreach循环遍历数组

foreach($array as $key => $value)
{
  echo $key." has the value ".$value;
}

将其解码为普通数组:

$str = json_decode($string);

您可以首先使用以下命令将此字符串转换为PHP数组:


然后,迭代这些数据的最简单方法是使用循环:


伙计,你用你的阵法把我打得屁滚尿流。。请尽量让人更容易理解-你也能解释一下你计划制作什么样的数据网格吗。。。让人们了解比特币在过去30天的发展趋势。
$str = json_decode($string);
$str = '[{"volume": 1E+1, "timestamp": 1301982430, "symbol": "mtgoxUSD", "price": 0.62}, {"volume": 1E+1, "timestamp": 1301982430, "symbol": "mtgoxUSD", "price": 0.62}, {"volume": 31, "timestamp": 1301981474, "symbol": "mtgoxUSD", "price": 0.64}, {"volume": 8.592, "timestamp": 1301981466, "symbol": "mtgoxUSD", "price": 0.6401}, {"volume": 10.89, "timestamp": 1301981466, "symbol": "mtgoxUSD", "price": 0.6401}, {"volume": 9.61, "timestamp": 1301981066, "symbol": "mtgoxUSD", "price": 0.641}, {"volume": 1E+1, "timestamp": 1301981058, "symbol": "mtgoxUSD", "price": 0.641}, {"volume": 21.654, "timestamp": 1301981058, "symbol": "mtgoxUSD", "price": 0.641}, {"volume": 2E+1, "timestamp": 1301980388, "symbol": "mtgoxUSD", "price": 0.6729}, {"volume": 1E+1, "timestamp": 1301980373, "symbol": "mtgoxUSD", "price": 0.641}]';
$data = json_decode($str);
foreach ($data as $item) {
    echo "{$item->volume} - {$item->timestamp} - {$item->symbol} - {$item->price} <br />";
}
10 - 1301982430 - mtgoxUSD - 0.62
10 - 1301982430 - mtgoxUSD - 0.62
31 - 1301981474 - mtgoxUSD - 0.64
8.592 - 1301981466 - mtgoxUSD - 0.6401
10.89 - 1301981466 - mtgoxUSD - 0.6401
9.61 - 1301981066 - mtgoxUSD - 0.641
10 - 1301981058 - mtgoxUSD - 0.641
21.654 - 1301981058 - mtgoxUSD - 0.641
20 - 1301980388 - mtgoxUSD - 0.6729
10 - 1301980373 - mtgoxUSD - 0.641