[英]PHPSpreadSheet : Site can't be reach
嘗試使用 CodeIgniter 3 中的 PhpSpreadSheet 導出 xlsx 文件。當我運行 url 時,它顯示無法訪問此站點。 Web 可能暫時關閉,或者它可能已永久移動到新的 web 地址。
Controller
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
function generateLR(){
// create file name
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="result.xlsx');
header('Cache-Control: max-age=0');
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
$writer = new Xlsx($spreadsheet);
$writer->save('php://output');
}
但是如果我嘗試在本地保存$writer->save('hello world.xlsx');
. output 成功保存在項目文件夾中。
也嘗試使用 IOFactory 但結果是一樣的: web is temporary down
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\IOFactory;
function generateLR(){
// create file name
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="result.xlsx');
header('Cache-Control: max-age=0');
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
$writer = IOFactory::createWriter($spreadsheet,'Xlsx');
$writer->save('php://output');
}
找到了答案。 問題是sys_get_temp_dir()
的權限。 默認情況下,我的臨時文件夾在 Macbook 中是不可訪問的。 更改權限后。 Excel 可以在 localhost 中創建
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.