1

データを含むphp配列からcsvファイルを生成しようとしています。問題なく csv ファイルを生成できます。しかし、ファイルの見出しに少し苦労しています。

これが私のコードです。

public function download_csv_file (){
    $total_call_log=get_overage_report();
    $start_date=date("Y-m-01");
    $end_date=date("Y-m-d");
    $filename="OveragesReport-$end_date";
    $heading="Bill Period From :$start_date To $end_date\n";
    $csv_output=$heading;
    $line = "Comp_ID,CompanyName,Cust_Name,Plan_Type,Plan_Limit,Plan_Cost,Plan_Overage,Total_Usages,Total_Overage_Cost\n";
    $csv_output .= $line;
    $comma = ",";
        foreach ($total_call_log as $call_info) {
                $line1 = NULL;
                $line1 .= $call_info['Comp_ID'];
    $line1 .= $comma.'"'.$call_info['CompanyName'].'"';
                $line1 .= $comma.'"'.$call_info['Cust_Name'].'"';
    $line1 .= $comma.'"'.$call_info['Plan_Type'].'"';
                $line1 .= $comma.'"'.$call_info['Plan_Limit'].'"';
    $line1 .= $comma.'"'.$call_info['Plan_Cost'].'"';
                $line1 .= $comma.'"'.$call_info['Plan_Overage'].'"';
    $line1 .= $comma.'"'.$call_info['total_call_length'].'"';
                $line1 .= $comma.'"'.ceil($call_info['total_overage_cost']).'"';
    $csv_output .= $line1."\n";
           }
    header('Content-type: application/octet-stream');
    header("Content-disposition: attachment; filename=".$filename.".csv");
    print($csv_output);
}

私が欲しいのは、最初の行ではすべての列のみがマージされ、見出しは行の中央にあるはずです。現在、heading($heading) は最初の列にのみ表示されます。どうすればこれを達成できますか????

4

0 に答える 0