dsfvsdfv23599 2016-11-22 15:57
浏览 21

解析php上的大型csv文件

I have a csv file, which is tab delimited. Inside the cells have used a semicolon as a separator between values. Whether php means to process the file and get to the exit to the right of each line array of values.

here is my code:

$handle = fopen($name_csv, "r");
            $data_import = array();
            if(empty($handle) === false) {
                while(($data = fgetcsv($handle, 1000, "\t")) !== FALSE) {
                    foreach( $data as $key => $val ) {

                        $data[$key] = trim( $data[$key] );
                        $data[$key] = iconv('windows-1251', 'UTF-8', $data[$key]);
                        $data[$key] = str_replace('""', '"', $data[$key]);
                        $data[$key] = preg_replace("/^\"(.*)\"$/sim", "$1", $data[$key]);

                    }
                    $data_import[] = $data;
                }
                fclose($handle);
            }

output array:

Array
(
    [0] => Array
        (
            [0] => test;test;test;"test value; test value";test
        )

The file size 300 MB.

original csv:

test;test;test;"test value; test value";test
test;test;test;"test value; test value";test
test;test;test;"test value; test value";test
test;test;test;"test value; test value";test
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 python的qt5界面
    • ¥15 无线电能传输系统MATLAB仿真问题
    • ¥50 如何用脚本实现输入法的热键设置
    • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
    • ¥30 深度学习,前后端连接
    • ¥15 孟德尔随机化结果不一致
    • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
    • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
    • ¥15 谁有desed数据集呀
    • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100