php获取文件行数的三种方法

时间:2016-08-09
本文章向大家介绍php获取文件行数的三种方法,第一种方法是使用feof和fgets函数,第二种方法是使用stream_get_line函数,第三种方法是使用count函数,具体实现请看下面实例。

stream_get_line获取文件行数

<?php 
$file_path = 'xxx.txt'; //文件路径 
$line = 0 ; //初始化行数 
//打开文件 
$fp = fopen($file_path , 'r') or die("open file failure!"); 
if($fp){ 
//获取文件的一行内容,注意:需要php5才支持该函数; 
while(stream_get_line($fp,8192,"\n")){ 
  $line++; 
} 
fclose($fp);//关闭文件 
} 
//输出行数; 
/* http://www.manongjc.com/article/1330.html */
echo $line; 
?> 

feof和fgets获取文件行数

 <?php
$lines = 0;//初始化行数 

if ($fh = fopen('data.txt','r')) {//打开文件
  while (! feof($fh)) {//判断是否已经达到文件底部
    if (fgets($fh)) {//读取一行内容
      $lines++;
    }
  }
}
print $lines;
?>

count获取文件行数

<?php 
  $line = count(file('filename')); 
  echo $line; 
?>

第三种方式因为要保存文件的内容,效率上会很差,这里小编推荐大家使用第一种和第二种方法。