1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
$fname = tempnam("/tmp", "logistique.xls");
$workbook = new writeexcel_workbook($fname);
$worksheet1 = $workbook->addworksheet(utf8_decode($nom_onglet));
// bloquage haut grille
$worksheet1->freeze_panes(1, 0); # 1 row
$header = $workbook->addformat();
$header->set_align('center');
$center = $workbook->addformat();
$center->set_align('center');
$grayed = $workbook->addformat();
$grayed->set_align('center');
$grayed->set_italic();
$grayed->set_color('gray');
$worksheet1->set_row(0, 20);
$worksheet1->set_selection('A2');
for( $i=0; $i<count($donnees['cols'])/2; $i++ ){
$worksheet1->set_column($i, $i, $donnees['cols'][$i*2]);
$worksheet1->write(0, $i, $donnees['cols'][$i*2+1], $header);
}
for( $j=1; $j<=count($donnees['data']); $j++ ){
$ligne = $donnees['data'][$j-1];
for( $i=0; $i<count($donnees['cols']); $i++ ) {
if(array_key_exists($i*2+1,$ligne) && $ligne[$i*2+1]){
$style = $ligne[$i*2];
$valeur = $ligne[$i*2+1];
if(array_key_exists($i*2,$ligne))$worksheet1->write($j, $i, $valeur, $$style); // Il y a bien 2 '$'
}
}
}
$workbook->close();
header("Content-Type: application/x-msexcel; name=\"$nom_fichier\"");
header("Content-Disposition: inline; filename=\"$nom_fichier\"");
$fh=fopen($fname, "rb");
fpassthru($fh);
unlink($fname); |
Partager