2011-01-17 6 views
9

データベースから情報を取得するためのPHP関数があります。彼らが行くときhttp://example.com/test/download.txtを生成してダウンロードを強制する

私は偽のtest.txt(テキストは動的です)を作成してダウンロードしたいと思います。内容は内部にforeach(databaseContent() as $content) { echo $content . '<br/>' }を実行するのと同等でなければなりません。

どうすればこの作業を開始できますか? (PHPを使用)

答えて

25

これらの行に沿ってphpドキュメントにリンクすることができます。これにより、プレーンテキストのダウンロードが強制されます。 (まあ、それは任意の割合で、起こるべきブラウザに示唆している。)もちろん

<?php 
header('Content-disposition: attachment; filename=gen.txt'); 
header('Content-type: text/plain'); 


echo "this is the file\n"; 
echo " you could generate content here, instead."; 
?> 

、適切なポストに渡すか、引数を取得し、それをあなたが好きなように制御します。

+0

大丈夫です。 RTFに適応する必要がありますが、gen.rtfとtext/richtextに変更すると、ファイルを開くことができませんでした。 – willium

+0

うれしかった!私はrtfのために、正確な内部構造を理解し、すべての正しいバイト/フォーマットのものを出力する必要があると思います。 (多分、rtf用のPHPライブラリがない限り...このSOのqにはリンクがあります:http://stackoverflow.com/questions/1482083/how-to-generate-rtfs-with-php) –

+0

awesome!私はプレーンテキストに固執するでしょう:P – willium

関連する問題