2016-10-28 7 views
0

-列の背景色が付いたPHPでExcelをエクスポートするには?私は、次のコードを使用してExcelにエクスポートしようとしています

$data = array(
    array("firstname" => "Mary", "lastname" => "Johnson", "age" => 25), 
    array("firstname" => "Amanda", "lastname" => "Miller", "age" => 18), 
    array("firstname" => "James", "lastname" => "Brown", "age" => 31), 
    array("firstname" => "Patricia", "lastname" => "Williams", "age" => 7), 
    array("firstname" => "Michael", "lastname" => "Davis", "age" => 43), 
    array("firstname" => "Sarah", "lastname" => "Miller", "age" => 24), 
    array("firstname" => "Patrick", "lastname" => "Miller", "age" => 27) 
); 

    function cleanData(&$str) 
    { 
    $str = preg_replace("/\t/", "\\t", $str); 
    $str = preg_replace("/\r?\n/", "\\n", $str); 
    if(strstr($str, '"')) $str = '"' . str_replace('"', '""', $str) . '"'; 
    } 

    $filename = "website_data_" . date('Ymd') . ".xls"; 

    header("Content-Disposition: attachment; filename=\"$filename\""); 
    header("Content-Type: application/excel"); 

    $flag = false; 
    foreach($data as $row) 
    { 
    if(!$flag){ 

     echo implode("\t", array_keys($row)) . "\r\n"; 
     $flag = true; 
    } 
    array_walk($row, __NAMESPACE__ . '\cleanData'); 
    echo implode("\t", array_values($row)) . "\r\n"; 
    } 

    exit; 

上記のコードは、Excelをエクスポートするため正常に動作しているが、私は、Excelのヘッダーは、特定の色に着色することにしたいが、できませんでしたこれを行うために何かを見つけた。 助けてください。

答えて

0

エクスポートするものは、xlsxではなくタブで区切られた* .csvファイルです。

あなたがエクスポートする必要がスタイリングを適用したい場合は/ https://github.com/box/spouthttps://github.com/PHPOffice/PHPExcelまたは(恥知らずプラグ)今私はPHPExcelをしようとするあなたの返事のためのhttps://github.com/nimmneun/onesheet

+0

おかげで、のようなものを使用して、実際のxlsxファイルを生成します。 –

関連する問題