Контроллер:
public function export (Request $request)
{
$dateStart = $request->dateStart;
$dateFinish = $request->dateFinish;
$table = Orders_user::where('created_at', '>=', date($dateStart))->where('created_at', '<=', date($dateFinish))->get();
// dd($table);
$filename = "test2.csv";
$handle = fopen($filename, 'w+');
// fprintf($handle, chr(0xEF).chr(0xBB).chr(0xBF));
fputs($handle, chr(0xEF) . chr(0xBB) . chr(0xBF)); // BOM
@fputcsv($handle, array('sep=,'));
fputcsv($handle, array('Imya','Telephone', 'Nomer zayavok', 'Gorod', 'Address', 'Obshaya cena', 'status', 'Vid oplaty', 'shippingttype', 'email'));
foreach($table as $row) {
fputcsv($handle, array(iconv('utf-8', 'windows-1251', $row['name']),
iconv('utf-8', 'windows-1251', $row['phone']),
iconv('utf-8', 'windows-1251', $row['description']),
iconv('utf-8', 'windows-1251', $row['city']),
iconv('utf-8', 'windows-1251', $row['address']),
iconv('utf-8', 'windows-1251', $row['totalprice']),
iconv('utf-8', 'windows-1251', $row['status']),
iconv('utf-8', 'windows-1251', $row['paymenttype']),
iconv('utf-8', 'windows-1251', $row['shippingttype']),
iconv('utf-8', 'windows-1251', $row['email'])
));
}
fclose($handle);
$headers = array(
'Content-Type' => 'text/csv',
);
return Response::download($filename, 'test.csv', $headers);
}
Я делаю следующим образом: Во первых заголовки
$headers = array(
"Content-type" => 'application/excel',
"Content-Disposition" => "attachment; filename=base_"." (".date("d.m.Y").")".".csv",
"Pragma" => "no-cache",
"Cache-Control" => "must-revalidate, post-check=0, pre-check=0",
"Expires" => "0"
);
Во вторых
$columns = ['Imya','Telephone', 'Nomer zayavok', 'Gorod', 'Address', 'Obshaya cena', 'status', 'Vid oplaty', 'shippingttype', 'email'];
$callback = function() use ($table, $columns)
{
$file = fopen('php://output', 'w');
fputs($file, chr(0xEF) . chr(0xBB) . chr(0xBF)); // BOM
fputcsv($file, $columns, ';','"');
foreach($table as $row) {
fputs($file, chr(0xEF) . chr(0xBB) . chr(0xBF));
fputcsv($file, $row, ';','"');
}
fclose($file);
};
return \response()->stream($callback, 200, $headers);
Понимаешь да смысл и разницу...
Есть скрипт, который парсит прайс в формате XMLОн написан так, что берёт в память объект XML и преобразует его в нужный вид, передавая данные...
Всем привет, подскажите пожалуйста почему не запускается контейнер?
Пишу сайтДелаю всё по информации в интернете и урокам