Php 一个文件中有多少行计数始终返回1

Php 一个文件中有多少行计数始终返回1,php,Php,我对php非常陌生,我正在尝试获取文件中有多少行。我目前正在使用我在网上找到的一些代码 $file = "filename"; $lines = count(file($file)); 这将返回1。还有更多的线。有什么见解吗?它与新行字符有关吗?我做了一个$fh=文件($file);拆分('\n',$fh)并且计数仍然是1…所以我不确定 您可以尝试以下方法: $lines = 0; if ($fh = fopen('file.txt', 'r')) { while (!feof($fh)

我对php非常陌生,我正在尝试获取文件中有多少行。我目前正在使用我在网上找到的一些代码

$file = "filename";
$lines = count(file($file));
这将返回
1
。还有更多的线。有什么见解吗?它与新行字符有关吗?我做了一个
$fh=文件($file);拆分('\n',$fh)并且计数仍然是1…所以我不确定

您可以尝试以下方法:

$lines = 0;

if ($fh = fopen('file.txt', 'r')) {
  while (!feof($fh)) {
    if (fgets($fh)) {
      $lines++;
    }
  }
}
echo $lines; // line count

可能重复:您正在做的应该可以工作-当您
打印(文件($file))
时会发生什么?输出有多少个元素?它包含你所有的文件吗?还有,你在哪个平台上工作?它可能不是OSX,是吗…?你确定文件有多行吗?返回0…我认为它是空的…也不,我不在OSX上。我在ubuntuThe文件是相当大的,它肯定有超过1行。