使用PHP创建Excel文件

时间:2018-07-31 09:47:00

标签: php excel

我正在使用此代码生成Excel文件。 在我的数据中,有一列名为条形码,假设条形码为012525551951200001.110100。当我写入Excel文件时,它显示为1.16222E + 16,如何使它显示为012525551951200001.110100?

$DB_Server = "**********";
$DB_Username = "**********";
$DB_Password = "**********";
$DB_DBName = "**********";
$DB_TBLName = "patient";
$xls_filename = 'export_'.date('Y-m-d').'.xls'; 
$sql = "Select * from $DB_TBLName";
$Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password);
$Db = @mysql_select_db($DB_DBName, $Connect);
$result = @mysql_query($sql,$Connect);
HEADER("Content-Type: application/xls");
HEADER("Content-Disposition: attachment; filename=Questionnaires Records.$xls_filename");
HEADER("Pragma: no-cache");
HEADER("Expires: 0");

$sep = "\t"; 

for ($i = 0; $i<mysql_num_fields($result); $i++) {
echo mysql_field_name($result, $i) . "\t";
}
print("\n");

while($row = mysql_fetch_row($result))
{
$schema_insert = "";
for($j=0; $j<mysql_num_fields($result); $j++)
{
  if(!isset($row[$j])) {
    $schema_insert .= "NULL".$sep;
  }
  elseif ($row[$j] != "") {
    $schema_insert .= "$row[$j]".$sep;
  }
  else {
    $schema_insert .= "".$sep;
  }
}
$schema_insert = str_replace($sep."$", "", $schema_insert);
$schema_insert = preg_replace("/\r\n|\n\r|\n|\r/", " ", $schema_insert);
$schema_insert .= "\t";
print(trim($schema_insert));
print "\n";
}

1 个答案:

答案 0 :(得分:-1)

您应使用以下代码增加该列的大小:

$objPHPExcel->getActiveSheet()->getColumnDimension(A1)->setWidth(7);