3

私はExcelファイルを作成して保存することができました:

// Rename the file
$fileName = URL . "MODEL/case" . $caseNO . ".xlsx";

// Write the file
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, $fileType);
$objWriter->save($fileName);

PHPExcelがExcelを自動的に実行し、作成されたファイルを開いて最大化するようになりました。出来ますか?Excel が既に実行されていても、これは機能しますか?

ご協力ありがとうございました、

ドナート

4

4 に答える 4

12

上記のコメントによると、強制的にダウンロード オプションを設定することしかできません。このために、この方法でヘッダーを設定できます-

header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
header("Content-Disposition: attachment;filename=\"filename.xlsx\"");
header("Cache-Control: max-age=0");

リファレンス - PHP Excel リーダー

その他のオプションについては、チート シートも確認できます -チート シート

ここで読むのが最善の方法ですが - Codeplex

編集

このようなことをしてください -

$excel = new PHPExcel();
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="your_name.xls"');
header('Cache-Control: max-age=0');  

// Do your stuff here

$writer = PHPExcel_IOFactory::createWriter($excel, 'Excel5');  

// This line will force the file to download    
$writer->save('php://output');
于 2013-03-03T18:47:16.273 に答える
2

PHPExcel はクライアント上で MS Excel を実行できません....しかし、ファイルをブラウザに直接ダウンロードして、ディスクに保存するか、MS Excel で直接開くオプションをクライアントに提供できます (MS Excel がインストールされている場合)。 ) 適切な http ヘッダーを送信し、ファイルを php://output に「保存」します。

もちろん、クライアントに MS Excel がインストールされていない場合、MS Excel で開くことはできません。それでも保存を求めるプロンプトは表示されますが。

/Tests または /Examples ディレクトリにある 01simple-download-xlsx.php ファイルはまさにこれを行います

そして「はい」、MS Excel がクライアント上ですでに実行されている場合は機能します

于 2013-03-03T18:58:02.273 に答える