2017-01-25 18 views
0

特定の情報のみをCSVファイルに出力することはできません。以下、例えば、出力ページからHTML、というよりも、私はApplicants.csvに送信しようとしているデータ:コンテンツタイプ:テキスト/ csvはcsvファイルにhtmlを出力します

($ a_Lines配列がすでに取り込まれている):

header('Content-type: text/csv'); 
header('Content-Disposition: attachment; filename="Applicants.csv"'); 
header('Pragma: no-cache'); 
header('Expires: 0'); 

$file = fopen('php://output', 'w'); 

foreach ($a_Lines as $row) { 
    fputcsv($file, $row); 
} 
fclose($file); 

答えて

0

fputcsv($file, $row); 
式の

ことは$行が常に配列です。確認してください$ a_Lines csvファイルから作成する場合は、foreachループは必要ありません(もちろん、$ a_Linesは配列であると仮定します)。 $ a_Lines配列から選択したデータを必要とする場合は、$ a_Linesを実行し、新しい配列を作成するか、既存の配列をループの後に変換して、fputcsv関数に追加します。

+0

ありがとう、ディーン。はい、私は$行が配列であることをvar_dump()で確認しました。その日の早いうちに、あなたのコメントに関連したエラーを生成した文字列でした。しかし、$行は、各繰り返しのための配列です。 –

+0

私はおそらく問題は、これは別のHTMLページにする必要があると思っています。現在、それは大きなページの条件の一部です。しかし、別のページのURLに(メインページの)CSVボタンを割り当てる必要があるかもしれません。それは正しいと思いますか? –

+0

ページに出力することができるのは1つだけです。だから、出力として前に何かがあるなら、それを変更しなければなりません。それ以外の場合は、問題ではありません。あなたはもう1つのことをすることができます - filenameの前後に二重引用符を削除しようとします。 –

関連する問題