Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php 统计文件行数的代码

php 统计文件行数的代码

WBOY
WBOYasal
2016-07-25 08:56:51870semak imbas
本文分享一个用于统计文件行数的php代码,不是采用file()函数,而是通过自定义的函数,使用fopen系列函数来实现该功能。希望对大家有所帮助。

在php中,如果要统计文件的行数,对于小文件而言,使用file()函数是最方便的。 不过对于大文件而言,采用file()函数,就会效率很低,因为该函数会一次性把数据读取到一个数组中,然后储存在内存中。 由于php内存的限制,此方法处理大文件时,会效率极低,且容易出错。

本文介绍的这个方法,通过逐行遍历文件,可以处理任意大小的文件,而不用考虑内存限制的问题。

统计文件行数的代码,如下:

<?php
 /*** 统计文件行数,调用示例 ***/
 echo countLines("/path/to/file.txt");

 /**
 *
 * @统计文件行数
 * @param string filepath 
 * @return int
 * @edit bbs.it-home.org
 */
 function countLines($filepath) 
 {
    /*** open the file for reading ***/
    $handle = fopen( $filepath, "r" );
    /*** set a counter ***/
    $count = 0;
    /*** loop over the file ***/
    while( fgets($handle) ) 
    {
        /*** increment the counter ***/
        $count++;
    }
    /*** close the file ***/
    fclose($handle);
    /*** show the total ***/
    return $count;
 }

?>


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn