16

csvファイルの各列のサイズを設定したい、フィールドに対して列のサイズを設定したい、サイズを設定するためのコードをどこで実行できるかわかりませんか?よろしくお願いします。

これは私のコードです

function export($result)
{   
    Configure::write('debug',0);
    $filename = "excel.".csv";
    $csv_file = fopen('php://output', 'w');
    header('Content-Type: text/csv; charset=utf-8');
    header('Content-Disposition: attachment; filename="'.$filename.'"');    

    // The column headings of  .csv file
    $header_row1 = array(   
                        "Last Name",
                        "First Name",
                        "Middle Name",
                        );

    $header_row =   array_merge($header_row1,$header_row2);
    fputcsv($csv_file,$header_row,',','"');

    // Array indexes correspond to the field names in your db table(s)
    if (!isset($result['Post']['User'])) {
        $row1 = array(
            $result['Post']['prefix_name'],
            $result['Post']['first_name'],
            $result['Post']['middle_name'],
            $result['Post']['last_name'],
        );
    }
    else {
            $row1 = array(
            $result['Post']['prefix_name'],
            $result['Post']['first_name'],
            $result['Post']['middle_name'],
            $result['Post']['last_name'],
        );
    }

    $row = array_merge($row1,$row2);

    unset($row2);
    fputcsv($csv_file,$row,',','"');
}

    fclose($csv_file);
    exit;
}
4

3 に答える 3

24

できません...CSVファイルには、列サイズを含むいかなる種類のフォーマットもありません。

列幅を制御する場合は、BIFF(.xls)、OfficeOpenXML(.xlsx)、OASIS Open Document Format(.ods)、Gnumericなどの列幅をサポートする形式でデータを書き込む必要があります。スプレッドシート。

于 2013-03-05T12:43:12.837 に答える
5

これを行う方法はありません。
CSVは、コマ区切り値を表します。

カンマ区切り値(CSV)ファイルは、表形式のデータ(数値とテキスト)をプレーンテキスト形式で格納します。プレーンテキストとは、ファイルが文字のシーケンスであり、代わりに2進数として解釈する必要のあるデータがないことを意味します。CSVファイルは、なんらかの改行で区切られた任意の数のレコードで構成されます。各レコードは、他の文字または文字列、最も一般的にはリテラルのコンマまたはタブで区切られたフィールドで構成されます。通常、すべてのレコードには同じフィールドのシーケンスがあります。

短く明確な定義。
CSVはこれには原始的すぎます。
通常のテキストエディタでCSVファイルを開こうとしたことがありますか?
この場合、XLSが必要です。

于 2013-03-05T13:01:14.467 に答える
3

ご存知のように、プレゼンテーションのレイアウトに関する情報がまったくないため、CSVで列サイズを設定することはできません。CSVはコマ区切り値です。

ファイルを開くアプリケーションの最適な動作は、データに合わせて列幅を設定することです。

プレゼンテーションのレイアウトを管理する場合は、代わりに、Excelで開くことができるhtmlコンテンツを生成する必要があります(例)。このようなコンテンツでは、次のようないくつかの属性を設定できますwidth="400"...

于 2013-03-05T12:43:54.740 に答える