猿问

php中用fgetcsv方法读取csv可以指定起始行吗?

<?php
    $conn = mysqli_connect(****);
    

    if (isset($_POST["import"])) {
        
        $fileName = $_FILES["file"]["tmp_name"];
        
        if ($_FILES["file"]["size"] > 0) {
            
            $file = fopen($fileName, "r");
            
            while (($column = fgetcsv($file, 10000, ",")) !== FALSE) {
                $sqlInsert = "
                    insert into users (userId,userName,password,firstName,lastName) 
                    values ('" . $column[0] . "','" . $column[1] . "','" . $column[2] . "','" . $column[3] . "','" . $column[4] . "')";
                $result = mysqli_query($conn, $sqlInsert);
                
                if (! empty($result)) {
                    $type = "success";
                    $message = "成功导入!!!";
                } else {
                    $type = "error";
                    $message = "导入出错";
                }
            }
        }
    }
?>

php中用fgetcsv方法读取csv怎么指定起始行啊?

慕桂英546537
浏览 476回答 2
2回答

叮当猫咪

使用 fseek 函数 fseek — 在文件指针中定位 虽然文档中只写到了定位到指定字节,但是在用户笔记中可以看到有很多用户已经写出来了读取指定行的方法。 第一个 第二个 ... 很多 可以通过检索 line 关键字来查找这些内容。 甚至还有人在 stackoverflow 提出了这个问题performance - What is the best way in PHP to read last lines from a file? - Stack Overflow - 。

慕的地10843

<?php $file = fopen("contacts.csv","r"); while(! feof($file)) { print_r(fgetcsv($file)); } fclose($file); ?> 是循环读取的,不可以指定行读取也可以 i++,可以实现,效率不好
随时随地看视频慕课网APP
我要回答