为什么使用exit(); 它只从选定的数据中存储csv文件中的一行?

Tau*_*ras 1 php csv wordpress export

我坚持这个问题...例如,我正在使用exit();它工作,但它只适用于第一个选定的行,而不是所有.如果我使用echo来显示数据,它会完美显示.如果我试图让它工作没有退出(); 它根本不起作用.有关如何解决此问题的任何建议?

$vet = $_GET['vet'];
$name = $_GET['name'];
// etc...

$data = fopen('php://output', 'w');
fputcsv($data,array('ID', 'Name', 'Email address', etc...));

// selection query (it works perfecly)

foreach...

// echo query for tests (it works perfectly)

fputcsv($data, array($id, $name, $email, etc...));

header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename='. $name .'.csv');

exit();

endforeach....
Run Code Online (Sandbox Code Playgroud)

Sou*_*ose 5

在headerS&exit应该是后loop结束.目前它正在添加第一行然后退出循环.结果只存在一行.循环应该运行所有迭代以将所有行添加到文件中.

foreach...

// echo query for tests (it works perfectly)

fputcsv($data, array($id, $name, $email, etc...));

endforeach....

header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename='. $name .'.csv');

exit();
Run Code Online (Sandbox Code Playgroud)