php - 在php中foreach一个特定的多维数组
问题描述
我在论坛中进行了搜索,确实找到了很多示例,但是没有一个适合我。也许(肯定)我做错了什么。出于这个原因,如果可能的话,我需要你们的帮助。
我想要的是?我想从 json 文件中获取特定的数组。
大批:
array (
'Data' =>
array (
0 =>
array (
'Id' => 439201,
array (
),
'Members' =>
array (
0 =>
array (
'PortfolioId' => 439201,
'Id' => 100,
array (
'Id' => 1182,
'Symbol' => 'BTC',
),
'Amount' => 0.1,
'BuyPrice' => 4000,
),
1 =>
array (
'PortfolioId' => 439201,
'Id' => 200,
array (
'Id' => 1182,
'Symbol' => 'BTC',
),
'Amount' => 0.2,
'BuyPrice' => 5000,
)
)
)
)
)
我想这样打印:
+----------+---------+----------+
| id | amount | BuyPrice |
+-------------------------------+
| 100 | 0.1 | 4000 |
+-------------------------------+
| 200 | 0.2 | 5000 |
+----------+---------+----------+
我的PHP代码:
$url = file_get_contents(dirname(__DIR__ ) . '/json/history.json');
$array = json_decode($url, TRUE);
foreach ($array as $items) {
foreach ($items as $key => $value) {
echo $value['Id'] . '|' . $value['amount'] . '|' . $value['BuyPrice'] . '<br>';
}
}
解决方案
尝试这个
$arrayName = array (
'Data' =>
array (
0 =>
array (
'Id' => 439201,
array (
),
'Members' =>
array (
0 =>
array (
'PortfolioId' => 439201,
'Id' => 100,
array (
'Id' => 1182,
'Symbol' => 'BTC',
),
'Amount' => 0.1,
'BuyPrice' => 4000,
),
1 =>
array (
'PortfolioId' => 439201,
'Id' => 200,
array (
'Id' => 1182,
'Symbol' => 'BTC',
),
'Amount' => 0.2,
'BuyPrice' => 5000,
),
),
),
),
);
foreach ($arrayName['Data'][0]['Members'] as $key => $value) {
echo $value['Id'] . '|' . $value['Amount'] . '|' . $value['BuyPrice'] . '<br>';
}
推荐阅读
- google-api - 将 Google Cloud Storage 文件导出到 Google Drive
- unity3d - 如何在一个 Vuforia 应用程序中使用标记跟踪和地平面?
- python - Flask-sentinel /oauth/token 端点 CORS 问题
- linux - 用于更改不同扩展名的文件名的 Bash 脚本
- excel - 如何使用部分文件名通配符运行 fileExists 检查?
- spring - Spring Data JPA QueryLimit
- python - argparse - 如何将特定 args 与特定函数相关联
- php - 在 env 中创建变量并在刀片中使用它,错误
- java - 从另一个线程中检索字符串,导致周期性崩溃
- sapui5 - scrollToSection 方法不滚动