2009-08-23 9 views

Antwort

2

Wenn eine Datei CSV tun (können in Excel geöffnet/bearbeitet/gespeichert) Sie etwas tun können:

foreach ($thing as $val) { 
    if($val['checked']) { 
     $csv_output .= "\"" . $val['name'] . "\",\"" . $val['tel'] . "\",\"" . $val['email'] . "\"\n"; 
    } 
} 
header("Content-type: application/vnd.ms-excel"); 
header("Content-disposition: filename=" . $filename . "-" . date("Y-m-d") . ".csv"); 
print $csv_output;die; 

Wo $ csv_output eine Zeichenfolge im CSV-Format formatiert ist.

Wenn Sie die Datei speichern Sie die PHP-Funktion fputcsv

0

nur ein Teil der Lösung natürlich verwenden können, aber das PHP-Modul Spreadsheet Excel Writer werden Sie zur Ausgabe einer Excel-Tabelle ermöglichen.

0

Die Ausgabe einer normalen HTML-Seite funktionierte am besten für mich. Excel interpretiert die Formatierung einschließlich CSS. Und der Code bleibt lesbar.

<?php 

$countries = Array(
    Array('name' => 'France', 'capital' => 'Paris'), 
    Array('name' => 'Germany', 'capital' => 'Berlin'), 
    Array('name' => 'Switzerland', 'capital' => 'Berne'), 
); 

// make the browser open it in Excel 
header("Content-type: application/vnd.ms-excel"); 
header("Content-disposition: filename=countries.xls"); 

?> 
<html> 
    <head> 
     <style type="text/css"> 
td { 
    border: 1px solid blue 
} 
     </style> 
    </head> 
    <body> 
     <table> 
      <tr> 
       <th>Country</th> 
       <th>Capital</th> 
      </tr> 
      <? foreach ($countries as $country): ?> 
       <tr> 
        <td><?=$country['name'] ?></td> 
        <td><?=$country['capital'] ?></td> 
       </tr> 
      <? endforeach; ?> 
     </table> 
    </body> 
</html> 
0

Es gibt PHPExcel, eine gute Bibliothek zum Schreiben von Excel-Dateien in PHP.

Verwandte Themen