【发布时间】:2020-05-06 16:23:59
【问题描述】:
我需要从 url 中获取一系列 csv,它们具有不同的命名,但扩展名为 .csv 和完全相同的格式。
然后转成json。
以下是我使用的,但如何循环任何.csv?
也曾经下载它们如何合并它们?所以假设我们有不同的日期,我们应该期待这样的合并:
{
"date": 2/4/20,
"state": "AK",...
},
{
"date": 3/4/20,
"state": "AK"...
这是我用于单个 csv 的 php
header('Content-Type: application/json');
if (($handle = fopen("example.com/NAME.csv", "r")) !== FALSE) {
$csvs = [];
while(! feof($handle)) {
$csvs[] = fgetcsv($handle);
}
$datas = [];
$column_names = [];
foreach ($csvs[0] as $single_csv) {
$column_names[] = $single_csv;
}
foreach ($csvs as $key => $csv) {
if ($key === 0) {
continue;
}
foreach ($column_names as $column_key => $column_name) {
$datas[$key-1][$column_name] = $csv[$column_key];
}
}
$json = json_encode($datas, JSON_PRETTY_PRINT);
fclose($handle);
print_r($json);
}
如果我们有怎么办
example.com/NAME.csv
example.com/NAME2.csv
example.com/NAME3.csv
更新
【问题讨论】:
-
评论不用于扩展讨论;这个对话是moved to chat。