Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP在文本文件的特定行后计算行数_Php_Count_Row - Fatal编程技术网

PHP在文本文件的特定行后计算行数

PHP在文本文件的特定行后计算行数,php,count,row,Php,Count,Row,我想在特定行之后计算文本文件(.txt)的行数 示例:我想在第10行之后,然后是第11行,直到结束为止 可能吗 我所尝试的: $files = "log.txt"; echo count(file($files)); 但正如您所知,它将计算所有行 我想要的是,在第10行之后,然后是第11行,直到结束 有什么想法吗 更新 只需要计算有值的行,忽略空行/行 $files ="log.txt"; $f = fopen($files, 'rb'); $row = 1; while (!feof($f)

我想在特定行之后计算文本文件(.txt)的行数

示例:我想在第10行之后,然后是第11行,直到结束为止

可能吗

我所尝试的:

$files = "log.txt";
echo count(file($files));
但正如您所知,它将计算所有行

我想要的是,在第10行之后,然后是第11行,直到结束

有什么想法吗

更新 只需要计算有值的行,忽略空行/行

$files ="log.txt";
$f = fopen($files, 'rb');
$row = 1;
while (!feof($f)) {
    $row += substr_count(fread($f, 8192), "\n");
}
fclose($f);
echo $row;
如果未计算空行,则此选项无效

$r  = array_filter(array_map("trim", file($files)), "strlen");
echo count($r);

与markatonay相似,但较短:

$text = file_get_contents('/tmp/log.txt');
$lines = array_filter(array_map('trim', explode("\n", $text)));

print_r($lines);
echo "COUNT:" . count($lines);
echo "\r\n";

我对PHP不是很熟悉,但你不能减去10吗?@ricky3350如何做?
echo count(file($files))-10,也许?它正在工作,但我只需要计算有值的行。如果行为空,则不计算。有可能吗?请更新您的问题,以包括额外的要求@HidayuriedAvteried,并得到不同的结果。在log.txt上有1752行。在PHP脚本上获得1764行,忽略为空row@HiDayurieDave文本编辑器中行数的屏幕截图。