0

我在 textfile.txt 中有三个 eintries:

20100220
Hello
Here is Text \n blah \t even | and & and so on...

我想将每个条目(行)作为 php 中的新字符串读取。我想过使用 fopen 和 fgets。但是:由于我在最后一行使用了像 \n 这样的特殊字符,所以 fgets() 不起作用,因为它会在 \n 处终止字符串,对吗?结果,最后一行将只是“这是文本”。

我怎样才能以正确的方式读取/分解这三行,所以最后一行中的 \n 将被解释为普通字符串?谢谢!

ps 通过在我的 textfile.txt 中包含三行,我间接选择了 \n 作为分隔符,但我也可以使用另一个分隔符。阅读内容的最佳方式是什么?

4

2 回答 2

2

你有两个选择:

1.- 使用file()获取每行一个元素的数组(用'\n'分隔)

$lines_of_file = file("myfile.txt");
//Now $lines_of_file have an array item per each line

2.- 使用file_get_contents()获取单个字符串,然后您可以使用所需的任何分隔符进行拆分

$file_content = file_get_contents("myfile.txt");
$file_content_separated_by_spaces = explode(" ", $file_content);
于 2010-02-20T10:57:35.137 回答
1

使用file(),它将自动为您提供一个逐行数组:

$rows = file('textfile.txt');

即使您使用 fgets 等,您也应该能够正确爆炸,"\n"因为它的处理方式与 literal 不同'\n'

于 2010-02-20T10:55:48.700 回答