Я делаю файл CSV, и мне нужно сделать новую строку после каждой процедуры. Стандарт \ n \ r не работает.
Код выглядит так:
while ($resultD=mysql_fetch_assoc($queryDown))
{
$csv.= $resultD["first_name"].' , '.$resultD["last_name"].' , '.$resultD["login"].' , '.$resultD["password"].'\n\r';
}
$filename= "export.csv";
$theFile=fopen($filename,"w");
fwrite($theFile, $csv);
Вы можете использовать:
$csv .= '...' . "\r\n";
Или же
$csv .= '...' . PHP_EOL;
Или посмотрите на fputcsv
чтобы заставить его работать легко: http://php.net/manual/en/function.fputcsv.php
использование "\r\n"
, вместо '\n\r'
,
Вам нужны двойные кавычки ""
распознать escape-последовательности \r
а также \n
, Одиночные кавычки этого не сделают.
РЕДАКТИРОВАТЬ
Как упоминал Майкл, вы также можете использовать PHP_EOL
опять вместо '\n\r'
,
Это создает символ новой строки, который совместим на нескольких платформах.
Из документации PHP на строки:
Заметка: В отличие от синтаксиса в двойных кавычках и heredoc, переменные и escape-последовательности для специальных символов не будут расширяться, если они встречаются в строках в одинарных кавычках.
$csv.= $resultD["first_name"].' , '.$resultD["last_name"].' , '.$resultD["login"].' , '.$resultD["password"]."\n";