Creating CSV from PHP - carriage return will not work

Sounds like a pretty simple problem, but can't make it work. I am trying to download a csv file (which works fine).

Basically, I cannot return a carriage return.

header("Content-type: text/x-csv");
header("Content-Disposition: attachment; filename=search_results.csv");
echo '"Name","Age"\n"Chuck Norris","70"';
exit;

Result: Name Age \ n "Chuck Norris" 70

I tried:

echo '"Name","Age",\n,"Chuck Norris","70"';

Result: Name \ n / ">
AND

echo '"Name","Age",\n\r,"Chuck Norris","70"';

Result: Name \ n \ r \ n \ n \ r \ n \ n \ r \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \

Know what went wrong?

+3
source share
2 answers

CSV, . . " ", :

Yup,/n :)

.

echo '"Name","Age"' . "\n" . '"Chuck Norris","70"';

( )

echo "\"Name\",\"Age\"\n\"Chuck norris\",\"79\"";

:

 $nl = "\n";
   echo '"Name","Age"' . $nl .  '"Chuck Norris","70"';
+7

, , . PHP ( ). fputcsv csv , , output (stdout) .

.

$list = array (
  array('Name', 'Age'),
  array('Chuck Norris', 79)
);

foreach ($list as $line) {
    fputcsv(STDOUT, $line);
}
+4

Source: https://habr.com/ru/post/1746948/


All Articles