PHP взорвать новые строки содержимого из текстового файла - PullRequest
6 голосов
/ 18 июля 2010

У меня есть текстовый файл с адресами электронной почты под другим, как:

test@test.com
test2@test.com

Пока мне удалось открыть его с помощью

$result = file_get_contents("tmp/emails.txt");
, но я не знаю, чтобы получить адреса электронной почты вмассив.В принципе, я мог бы использовать Explode, но как мне отделить новую строку?заранее спасибо за любой ответ!

Ответы [ 3 ]

27 голосов
/ 18 июля 2010

Просто прочитайте файл, используя file(), и вы получите массив, содержащий каждую строку файла.

$emails = file('tmp/emails.txt');

Чтобы не добавлять новые строки к каждому адресу электронной почты, используйтефлаг FILE_IGNORE_NEW_LINES и для пропуска пустых строк используйте флаг FILE_SKIP_EMPTY_LINES:

$emails = file('tmp/emails.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

Выполнение var_dump($emails) из второго примера дает следующее:

array(2) {
  [0]=>
  string(13) "test@test.com"
  [1]=>
  string(14) "test2@test.com"
}
5 голосов
/ 06 мая 2013
$lines = preg_split('/\r\n|\n|\r/', trim(file_get_contents('file.txt')));
2 голосов
/ 17 октября 2012

Как бы безумно это ни показалось, выполнение return или enter внутри двойной кавычки ("") ограничивает символ новой строки.Чтобы сделать это понятным, введите:

explode("", "Stuff to delimit");

и просто нажмите клавишу возврата в середине "", чтобы вы получили:

explode("

", "stuff to delimit");

, и это работает.Вероятно, нетрадиционный, и может работать только на Linux.Но это работает.

...