【问题标题】:CSV string change with php用php更改CSV字符串
【发布时间】:2017-01-09 19:05:15
【问题描述】:

您好,我想用 PHP 消除 CSV 文件中的这个符号“(引号)。我正在将此文件与 amchart 一起使用,但使用引号图表不起作用。

文件是: "date1,value1,value2,value3,value4,value5,value6,value7,value8,value9"

"date2,value1,value2,value3,value4,value5,value6,value7,value8,value9"

"date3,value1,value2,value3,value4,value5,value6,value7,value8,value9"

"date4,value1,value2,value3,value4,value5,value6,value7,value8,value9"

"date5,value1,value2,value3,value4,value5,value6,value7,value8,value9"

我正在使用此代码:

error_reporting(0);
$records = array_map('str_getcsv', file('http://localhost/projekt/file.csv'));
        $data =array();
        foreach($records as $row){
            if($row[0] != 'date'){
                $data[] = array(
            'date' => $row[0],
            'open'=> $row[1],
            'high'=> $row[2],
            'low'=> $row[3],
            'close'=> $row[4],
            'column-5'=> $row[5],
            'column-6'=> $row[6],
            'column-7'=> $row[7],
            'column-8'=> $row[8],
            'column-9'=> $row[9],
            'column-10'=> $row[10],
            'column-11'=> $row[11],
            'column-12'=> $row[12],
            'column-13'=> $row[13],
            );
        }
    }
    $chartdata = json_encode($data);

    $chartdata = str_replace('\/','/',$chartdata);

【问题讨论】:

  • 你不能使用str_replace函数?

标签: php csv


【解决方案1】:

您可以使用以下语句:

array_map('str_getcsv', 
   array_map(
        function($item) {return trim($item, '""');},
        file('http://localhost/projekt/file.csv'))
);

【讨论】:

  • 太棒了。效果很好!。谢谢
【解决方案2】:

为什么不做一个较小的改变

 $records = array_map('str_getcsv',
    str_replace('"','',file('http://localhost/projekt/file.csv')));

【讨论】:

  • 我学到了一些新东西,str_replace 在数组内部工作!
猜你喜欢
  • 2021-04-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多