4

Linux サーバー上の PHP アプリケーションから Excel ドキュメントを生成する状態はどのようなものですか?

Office 97 (xls) の Excel ファイルを作成することに興味があります。このテーマに関する私の限られた調査の結果、このPear パッケージが見つかりました。2006 年からベータ版のようです。

PHP から Excel ファイルを生成する際の成功または失敗を共有できますか? 信頼できる成熟したツールはありますか?

更新: このアプリケーションでは、CSV ファイルだけでなく、Excel ファイルを生成する必要があります。

4

7 に答える 7

3

PEAR パッケージよりもはるかに優れたものがあります。

PHPエクセル

于 2009-10-07T09:06:39.480 に答える
2

私は PEAR パッケージを使用して多くの成功を収めてきましたが、複雑な式を実装する際にはいくつかの制限があります。これは、最後の計算結果とともに、Excel が数式を保存する方法と関係があります。数式が正しい場合でも、シートを最初に開いたときにセルが空として表示されることがあります。セルにフォーカスがあり、その後フォーカスを失うと、計算が実行され、セルにデータが入力されます。

このライブラリは、実際には perl ライブラリからの移植であり、少し完成度は高いですが、同じ問題があります。

于 2008-10-22T19:37:57.507 に答える
2

テーブルを使用して (スプレッドシートはテーブルなので問題ありません)、テーブルを生成する PHP スクリプトの先頭に次の行を追加するのはどうでしょうか。

header("Content-Type: application/vnd.ms-excel");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");

または、Excel でそれらをうまく開くことができるので、CSV ファイルを生成することもできます。

于 2008-10-22T14:47:27.827 に答える
2

問題なくいくつかのプロジェクトで PERL Spreadsheet::WriteExcel を使用しました。機能を強化して簡単にするために、いくつかの修正とラッパーを作成する必要があるかもしれませんが、問題はありません。

プラットフォームに依存せず、すばやく簡単にセットアップできるので気に入っています。

于 2008-10-22T20:43:26.300 に答える
2

私はその PEAR パッケージを使用しましたが、Office '97-2000 と互換性のあるファイルには最適です。

単純なスプレッドシートの場合、Office は CSV も処理できます。CSV は PHP がネイティブかつ簡単に出力できます。

于 2008-10-22T14:46:07.113 に答える
1

最も簡単な方法は、ヘッダーを使用して Excel ファイルを「偽造」することです。Excel ファイルとしてダウンロードを開始するコードは次のとおりです。クライアントの Excel は、見つかった HTML コード (テーブル、csv など) を解析し、Excel のような形式で表示します。

header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=excel.xls");
于 2008-10-22T15:39:31.933 に答える
0

現在、すべてがベータ版の状態です。実際にフォーラムとそのすべてを含む Excel ファイルが必要ですか、それとも Excel でレコードのリストを開いて作業するだけですか?

通常、クライアントが Excel ファイルを必要としている場合、実際には CSV ファイルを生成するだけで、Excel で作業を行い、必要な式を後で追加することができます。

于 2008-10-22T14:47:29.620 に答える