2

現在、HTML テーブルを含む変数にデータを格納しています。このアイデアは、純粋なPHPでスタイル、フォント、色、テーブルなどを含むExcelファイルをフォーマットする方法から得ましたか?

$table = '<table>';
$table .= '<tr>';
$table .= '<td>1st row, 1st cell</td>';
$table .= '<td>1st row, 2nd cell</td>';
$table .= '</tr>';
$table .= '<tr>';
$table .= '<td>2nd row, 1st cell</td>';
$table .= '<td>2nd row, 2nd cell</td>';
$table .= '</tr>';
$table .= '</table>';
downloadAsExcel($table, 'somefilename');

function downloadAsExcel($html, $filename)
{
    header("Content-Type: application/excel");
    header("Content-Disposition: attachment; filename=".ucwords($filename)."-Data.xls");
    header("Pragma: no-cache");
    header("Expires: 0");
    echo $html
}

これは正常に機能しており、出力は期待どおりです。ただし、同様のアプローチを使用して、1 つの Excel ファイルに複数のシートを作成できるかどうか疑問に思っていました。

ライブラリを使って仕事をしたくないので、それができれば素晴らしいと思います。PHPExcel、などを見たのでExcelReaderDocRaptorそのようなライブラリを使用しない回答を探しています (可能な場合)。

更新:言及するのをほとんど忘れていました-私もこれに出くわしましたhttp://webcheatsheet.com/php/create_word_excel_csv_files_with_php.php#excelcomしかし、これにはサーバーにMS Excelをインストールする必要がありますが、これは共有されているためできませんホスティング アカウント。

PS: 上記の方法で作成した Excel ファイルを開くときに表示される警告ダイアログは問題ありません。

4

2 に答える 2

0

なぜあなたは組み込みのクラスに行くことができませんPHPExcel

(i.e) $objPHPExcel = new PHPExcel()

そのためには、次のリンクを参照してください。

PHP を使用して複数の Excel シートを作成する

于 2013-05-22T10:32:20.847 に答える
0

ファイルを最初から作成することができます。そのためには、ファイル形式を知っておく必要があり、office 2007 以降、この標準は公開されています。

開始するには、http://en.wikipedia.org/wiki/Office_Open_XML を参照してください。

于 2013-05-22T10:34:12.320 に答える