\ n не работает в моем fwrite () - PullRequest
5 голосов
/ 28 марта 2010

Не уверен, в чем может быть проблема.

Я сбрасываю данные из массива $theArray в theFile.txt, каждый элемент массива в отдельной строке.

$file = fopen("theFile.txt", "w");
foreach ($theArray as $arrayItem){
    fwrite($file, $arrayItem . '\n');
}
fclose($file);

Проблема в , когда я открываю theFile.txt, я вижу, что \n выводится буквально. Также, если я попытаюсь программно прочитать файл построчно (на всякий случай, если есть строки), он показывает их как 1 строку, означающую, что \n действительно не дает желаемого эффекта.

Ответы [ 2 ]

8 голосов
/ 28 марта 2010

Заключите \n в двойные кавычки как "\n"

Внутри одиночной кавычки \n рассматривается как буквенная косая черта, за которой следует n, но внутри двойной кавычки это интерпретируется как символ перевода строки.

2 голосов
/ 28 марта 2010

Одинарные кавычки не обрабатывают ничего внутри кавычек. Любые символы «$» или экранированные символы будут отображаться точно так же, как они печатаются без изменений (если только вы не запускаете их через функцию. Вам нужно будет использовать двойные кавычки, чтобы «\ n» отображалось как разрыв строки в файле. .

...