如何使用PHP获取CSV文件中的总行数?

问题描述:

如何使用PHP获取CSV文件中的总行数?我使用这个方法,但可以让它正常工作。

How can I get the total number of rows that are in a CSV file using PHP? I'm using this method but can get it to work properly.

if (($fp = fopen("test.csv", "r")) !== FALSE) { 
  while (($record = fgetcsv($fp)) !== FALSE) {
      $row++;
  }

  echo $row;
}


c $ c> file()将整个文件读入数组,自动解析新行等:

Here's another option using file() to read the entire file into an array, automatically parsing new lines etc:

$fp = file('test.csv');
echo count($fp);

此外,从PHP5开始,您可以传递 FILE_SKIP_EMPTY_LINES ...跳过空行,如果你想:

Also, since PHP5, you can pass in the FILE_SKIP_EMPTY_LINES... to skip empty lines, if you want to:

$fp = file('test.csv', FILE_SKIP_EMPTY_LINES);

手动: http://php.net/manual/en/function.file.php