dongqindu8110 2015-06-28 18:29
浏览 82
已采纳

使用php将json转换为csv无法获得正确的格式

I am trying to save simple JSON data to csv using php. But the problem is that I am getting data in columns instead of rows. My JSON looks like: {"userid":"686868","deviceid":"dummy"}

and the code is:

   $csv_write_path = "test.csv";
   $json_str = file_get_contents($json_file);
   $json_obj = json_decode($json_str, true);
   $f = fopen($csv_write_path, 'w');
   foreach ($json_obj as $line){
       fputcsv($f, (array)$line);//tried using fputcsv($f, $line); // it saves nothing
   }
   fclose($f);

And the output is:

693936

dummy

But I want the output file to look like: 693936 | dummy //i mean col wise

can someone suggest me that what possibly is wrong?

  • 写回答

1条回答 默认 最新

  • dongli8862 2015-06-28 18:48
    关注

    You need to pass it an array of objects.

    Your code currently is putting a line on each key of your single object.

    example:

    [
        {
            "userid": "686868",
            "deviceid": "dummy"
        }
    ]
    

    then you dont need to cast to an array

    fputcsv($f, $line);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?