一聚教程网:一个值得你收藏的教程网站

热门教程

php fgetcsv读取csv文件代码

时间:2022-06-24 18:34:40 编辑:袖梨 来源:一聚教程网

 代码如下 复制代码

function get_csv_contents( $file_target ){

    $handle  = fopen( $file_target, 'r');

    while ($data = fgetcsv($handle, 1000, ",")) {
   
        $num = count($data);
        echo "

$num fields in line $row:
";
        $row++;
        for ($c=0; $c < $num; $c++) {
            echo $data[$c]. "
";;
            /*echo getUTFString($data[$c])*/
        }
    }

    fclose($handle);
}

array fgetcsv ( int handle [, int length [, string delimiter [, string enclosure]]] )

 


handle
一个由 fopen()、popen() 或 fsockopen() 产生的有效文件指针。

length (可选)
必须大于 CVS 文件内最长的一行。在 PHP 5 中该参数是可选的。如果忽略(在 PHP 5.0.4 以后的版本中设为 0)该参数的话,那么长度就没有限制,不过可能会影响执行效率。

delimiter (可选)
设置字段分界符(只允许一个字符),默认值为逗号。

enclosure (可选)
设置字段环绕符(只允许一个字符),默认值为双引号。该参数是在 PHP 4.3.0 中添加的。


和 fgets() 类似,只除了 fgetcsv() 解析读入的行并找出 CSV 格式的字段然后返回一个包含这些字段的数组。

fgetcsv() 出错时返回 FALSE,包括碰到文件结束时。

 

 
注意: CSV 文件中的空行将被返回为一个包含有单个 null 字段的数组,不会被当成错误。

 

例 1. 读取并显示 CSV 文件的整个内容

 代码如下 复制代码

$row = 1;
$handle = fopen("test.csv","r");
while ($data = fgetcsv($handle, 1000, ",")) {
    $num = count($data);
    echo "

$num fields in line $row:
";
    $row++;
    for ($c=0; $c < $num; $c++) {
        echo $data[$c] . "
";
    }
}
fclose($handle);

热门栏目