php json字符串导出csv,使用PHP将JSON转换为CSV格式

我正在尝试使用

PHP脚本将json文件转换为csv格式.代码如下:

if (empty($argv[1])) die("The json file name or URL is missed\n");

$jsonFilename = $argv[1];

$json = file_get_contents($jsonFilename);

$array = json_decode($json,true);

$f = fopen('output.csv','w');

$firstLineKeys = false;

foreach ($array as $line)

{

if (empty($firstLineKeys))

{

$firstLineKeys = array_keys($line);

fputcsv($f,$firstLineKeys);

$firstLineKeys = array_flip($firstLineKeys);

}

fputcsv($f,array_merge($firstLineKeys,$line));

}

这种工作,但只返回JSON文件的外部变量,并且我得到一个“数组到字符串转换”警告

JSON数据如下所示:

{"type":"NON_ATTRIBUTED","conversion":{,"value_1":"000000100355321","value_3":"XXXX","value_4":"12667","value_5":"6"},"stream_type":"COOKIE"}

{"type":"ATTRIBUTED","value_1":"000000167865321","value_3":"YYYY","value_4":"12668","value_5":"0"},"stream_type":"COOKIE"}

{"type":"NON_ATTRIBUTED","value_1":"000000134535321","value_3":"AAAA","value_4":"12669","value_5":"9"},"value_1":"000000100357651","value_3":"WWWW","value_4":"12670","value_5":"2"},"stream_type":"COOKIE"}

我得到的输出是:

类型,转换,的stream_type

NON_ATTRIBUTED,阵列,COOKIE

NON_ATTRIBUTED,COOKIE

我期望的输出是:

类型,value_1,value_3,value_4,value_5,stream_type

NON_ATTRIBUTED,000000100355321,XXXX,1267,6,COOKIE

..

任何帮助赞赏,因为这对我来说非常新鲜

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值