如何使用php在excel中设置背景单元格颜色

如何使用PHP创buildXLS时设置颜色头,请参阅下面的代码任何人都可以指导我如何做到这一点。谢谢

$sql_select= "******"; $queryRes = mysql_query($sql_select); //print $sql_select; $header = "Country" . "\t"; $header .= "Network" . "\t"; $header .= "MCC" . "\t"; $header .= "MNC" . "\t"; $header .= "ClientPrice" . "\t"; $header .= "Currency" . "\t"; //Reading the data thro' POST $data=""; $data1 = array(); $data1[]= "Country"; $data1[]= "Network"; $data1[]= "MCC"; $data1[]= "MNC"; $data1[]= "ClientPrice"; $data1[]= "Currency"; $data= join("\t", $data1)."\n"; while( $row = mysql_fetch_assoc($queryRes)){ $row1 = array(); $row1[] = $row['country']; $row1[] = $row['networkname']; $row1[] = $row['mcc']; $row1[] = $row['mnc']; $row1[] = $row['clientprice']; $row1[] = $row['currency']; $data .= join("\t", $row1)."\n"; //$data= $first_name."\t"; //$data .= $row['originator']."\t"; } $attachment_current= "Price Notification "."_$attachment_date"; file_put_contents("/data/data/www/fms/pricelists/$attachment_current.xls",$data); //print "$header\n$data"; 

你不是创build一个Excel文件,你正在创build一个CSV文件(在这种情况下,分隔标签),该格式不支持任何forms的格式(字体,颜色,即使合并单元格不是一个选项)。 ..你甚至没有使用PHP的内置fputcsv()函数来做到这一点:(

简单地给一个文件扩展名.xls不会使它成为一个Excel文件。 MS Excel能够读取CSV文件,但某些版本的Excel实际上会警告您在加载时格式不正确。

使用可用的许多库(如PHPExcel )之一创build适当的Excel BIFF或OfficeOpenXML文件,然后您将能够设置格式化,如单元格背景颜色。