这是来自file()函数的预期行为吗?

时间:2016-03-20 10:21:02

标签: php file newline

在php 7.0.3环境中,我有一个只包含一个换行符(“\ n”)的文件,我会执行以下操作:

var_dump(file("test.txt", FILE_IGNORE_NEW_LINES));

输出是:

array(1) {
  [0]=>
  string(0) ""
}

哪个错误,因为文件实际上由两个空行组成。

这是否可以从文件函数中忽略最后一行,如果它为空? 任何可靠的解决方法,其行为与文件函数类似,但如果为空则不会忽略最后一行?

1 个答案:

答案 0 :(得分:0)

我认为Wikipedia总结得非常好:

  

两种查看换行符的方法都是自洽的   换行分隔线或终止线。如果是换行符   被认为是分隔符,在最后一行之后将没有换行符   一个文件。

您可能希望改用FILE_SKIP_EMPTY_LINES | FILE_IGNORE_NEW_LINES;它returns the empty array you expect