stream Download에서 Laravel6CSV에서 다운로드한 샘플
(간단한 샘플이라 많이 빠졌어요.)
controller
public function csvDownload()
{
return response()->streamDownload(function () {
$handle = fopen('php://output', 'w');
$list = [[1,'hoge'], [2,'piyo'], [3, 'fuga']];
foreach ($list as $row) {
fputcsv($handle, $row);
}
fclose($handle);
}, 'sample.csv');
}
공식 문서 = > https://laravel.com/docs/6.x/responses#file-downloads다음 CSV를 다운로드하십시오.
끝.
보충
아래의 전화도 했지만 결과적으로 fpassthru로 output buffer에 건네주었기 때문에 아무런 변화가 없는 것 같습니다.하지만 아직 잘 모르겠어요.php://outpt
과php://memory
php://temp
의 차이를 전혀 모른다.공부가 필요해!
controllerreturn response()->streamDownload(function () {
$handle = fopen('php://temp', 'w'); // temp に変更
$list = [[1,'hoge'], [2,'piyo'], [3, 'fuga']];
foreach ($list as $row) {
fputcsv($handle, $row);
}
rewind($handle); // 追記
fpassthru($handle); // 追記
fclose($handle);
}, 'sample.csv');
cf. https://stackoverflow.com/questions/5946526/having-problems-reading-writing-the-php-temp-stream
보충
내용 유형은text/html입니다.하고 싶은 마음이 있어요.
보충
Windows라면 일본어가 엉망입니다.
var_dump$handle = fopen('php://memory', 'w');
$list = [[1,'hoge'], [2,'piyo'], [3, 'fuga']];
foreach ($list as $row) {
fputcsv($handle, $row);
}
rewind($handle);
// fpassthru($handle); // これをした後だと、stream_get_contents に入ってこない。
var_dump(stream_get_contents($handle));
fclose($handle);
이런 느낌으로 디버깅을 해요.문자 코드의 버전은 다음과 같습니다.
발췌하다return response()->streamDownload(function () use ($header, $list) {
$handle = fopen('php://temp', 'w');
fputcsv($handle, $header);
foreach ($list as $row) {
fputcsv($handle, $row);
}
rewind($handle);
echo mb_convert_encoding(stream_get_contents($handle), 'SJIS-win', 'UTF-8');
fclose($handle);
}, $name);
Reference
이 문제에 관하여(stream Download에서 Laravel6CSV에서 다운로드한 샘플), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/mochizukikotaro/items/a9de3d6af21a3bbec24e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
return response()->streamDownload(function () {
$handle = fopen('php://temp', 'w'); // temp に変更
$list = [[1,'hoge'], [2,'piyo'], [3, 'fuga']];
foreach ($list as $row) {
fputcsv($handle, $row);
}
rewind($handle); // 追記
fpassthru($handle); // 追記
fclose($handle);
}, 'sample.csv');
내용 유형은text/html입니다.하고 싶은 마음이 있어요.
보충
Windows라면 일본어가 엉망입니다.
var_dump$handle = fopen('php://memory', 'w');
$list = [[1,'hoge'], [2,'piyo'], [3, 'fuga']];
foreach ($list as $row) {
fputcsv($handle, $row);
}
rewind($handle);
// fpassthru($handle); // これをした後だと、stream_get_contents に入ってこない。
var_dump(stream_get_contents($handle));
fclose($handle);
이런 느낌으로 디버깅을 해요.문자 코드의 버전은 다음과 같습니다.
발췌하다return response()->streamDownload(function () use ($header, $list) {
$handle = fopen('php://temp', 'w');
fputcsv($handle, $header);
foreach ($list as $row) {
fputcsv($handle, $row);
}
rewind($handle);
echo mb_convert_encoding(stream_get_contents($handle), 'SJIS-win', 'UTF-8');
fclose($handle);
}, $name);
Reference
이 문제에 관하여(stream Download에서 Laravel6CSV에서 다운로드한 샘플), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/mochizukikotaro/items/a9de3d6af21a3bbec24e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$handle = fopen('php://memory', 'w');
$list = [[1,'hoge'], [2,'piyo'], [3, 'fuga']];
foreach ($list as $row) {
fputcsv($handle, $row);
}
rewind($handle);
// fpassthru($handle); // これをした後だと、stream_get_contents に入ってこない。
var_dump(stream_get_contents($handle));
fclose($handle);
return response()->streamDownload(function () use ($header, $list) {
$handle = fopen('php://temp', 'w');
fputcsv($handle, $header);
foreach ($list as $row) {
fputcsv($handle, $row);
}
rewind($handle);
echo mb_convert_encoding(stream_get_contents($handle), 'SJIS-win', 'UTF-8');
fclose($handle);
}, $name);
Reference
이 문제에 관하여(stream Download에서 Laravel6CSV에서 다운로드한 샘플), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mochizukikotaro/items/a9de3d6af21a3bbec24e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)