читать текстовый файл с разделителем в php - PullRequest
0 голосов
/ 20 февраля 2010

У меня есть три eintries в textfile.txt:

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

Я хочу прочитать каждую запись (строку) как новую строку в php. Я думал об использовании fopen и fgets. Но: так как я использую специальные символы, такие как \ n в последней строке, fgets () не будет работать, потому что завершит строку в \ n, верно? В результате последняя строка будет просто «Вот текст».

Как правильно прочитать / разложить три строки, чтобы \ n в последней строке интерпретировалось как нормальная строка? Спасибо!

p.s. Имея три строки в моем textfile.txt, я косвенно выбрал \ n в качестве разделителя, но я также мог бы использовать другой разделитель. какой самый лучший способ прочитать контент?

Ответы [ 2 ]

2 голосов
/ 20 февраля 2010

У вас есть два варианта:

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);
1 голос
/ 20 февраля 2010

Используйте file(), который автоматически выдаст вам построчный массив:

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

И даже если вы используете fgets и тому подобное, вы должны иметь возможность правильно взорваться с "\n", так как он трактуется иначе, чем буквальный '\n'.

...