Разрыв строки не работает при записи в текстовый файл в PHP - PullRequest
28 голосов
/ 16 ноября 2010

У меня есть следующий тестовый скрипт:

<?php

$myFile = "testFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = "Floppy Jalopy\n";
fwrite($fh, $stringData);
$stringData = "Pointy Pinto\n";
fwrite($fh, $stringData);
fclose($fh);

?>

при запуске и открытии обычного блокнота, данные возвращаются в одну строку без разрывов как:

Floppy Jalopy(сумасшедшая коробка) Pointy Pinto (сумасшедшая коробка)

, где я не могу найти подходящего персонажа для «сумасшедшей коробки», но это действительно Сумасшедшая коробка.ЧТО ДАЕТ!

Ответы [ 4 ]

57 голосов
/ 16 ноября 2010

Лучше всего использовать PHP_EOL. Это кроссплатформенный, поэтому он автоматически выбирает правильные символы новой строки для платформы, на которой в данный момент работает PHP.

$stringData = "Floppy Jalopy" . PHP_EOL;

PHP константы

34 голосов
/ 16 ноября 2010

Если вы хотите открыть файл в блокноте Windows, вы должны использовать разрывы строк Windows: \r\n

1 голос
/ 16 ноября 2010

Ваш код работает нормально.

Используйте Notepad2 или Notepad ++ , если вы работаете в Windows. Встроенный блокнот не справляется с окончаниями строк в стиле Unix.

0 голосов
/ 11 мая 2017

.PHP_EOL;будет работать универсально

...