2

导语

最近做了相关的功能,从 CSV 格式的文件中读取数据,然后进行操作,下面用实例代码记录下。

fgetcsv

fgetcsv — 从文件指针中读入一行并解析 CSV 字段

如果提供了无效的文件指针,fgetcsv() 会返回 NULL。 其他错误,包括碰到文件结束时返回 FALSE,。

这个函数比较关键,可以看到它的功能就是读取并解析 CSV 字段。这次没有用到太多的参数,有需要的看下方链接自行参考。

实例

CSV 文件示例如下
CSV 文件
实例代码如下

<?php

function getFileData($file)
{
    if (!is_file($file)) {
        exit('没有文件');
    }

    $handle = fopen($file, 'r');
    if (!$handle) {
        exit('读取文件失败');
    }

    while (($data = fgetcsv($handle)) !== false) {
        // 下面这行代码可以解决中文字符乱码问题
        // $data[0] = iconv('gbk', 'utf-8', $data[0]);

        // 跳过第一行标题
        if ($data[0] == 'name') {
            continue;
        }

        // data 为每行的数据,这里转换为一维数组
        print_r($data);// Array ( [0] => tom [1] => 12 )

    }

    fclose($handle);
}

getFileData('./01.csv');

参考资料:fopenfgetcsv


Haoyuqi
472 声望23 粉丝

PHPer