欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php生成excel

程序员文章站 2022-05-25 21:59:16
...
生成excel有很多方法 这里记录一个相对最简单 在php 5.3.8里能使用的

 1 function xlsBOF() { 2  echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0); 3  return; 4 } 5 function xlsEOF() { 6  echo pack("ss", 0x0A, 0x00); 7  return; 8 } 9 function format( $STR ){10  $STR = str_replace( "\"", "", $STR );11  if ( strpos( $STR, "," ) ){12   $STR = "\"".$STR."\"";13  }14  $STR = iconv( "utf-8", "gb2312", $STR );15  return $STR;16 }17 function xlsWriteNumber($Row, $Col, $Value) {18  echo pack("sssss", 0x203, 14, $Row, $Col, 0x0);19  echo pack("d", $Value);20  return;21 }22 function xlsWriteLabel($Row, $Col, $Value ) {23  $L = strlen($Value);24  echo pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);25  echo $Value;26  return;27 }28 function write_excel_line($hang,$lie,$val){29  if(is_numeric($val)){30   xlsWriteNumber($hang,$lie,$val);31  }else{32   xlsWriteLabel($hang,$lie,$val);33  }34 }35 $mktime = mktime();36 header('Content-Type: text/html; charset=utf-8');37 header("Pragma: public");38 header("Expires: 0");39 header("Cache-Control: must-revalidate, post-check=0, pre-check=0");40 header("Content-Type: application/force-download");41 header("Content-Type: application/octet-stream");42 header("Content-Type: application/download");43 header("Content-Disposition: attachment;filename=$mktime.xls ");44 header("Content-Transfer-Encoding: binary ");45 // XLS Data Cell46 xlsBOF();47 xlsWriteLabel(0, 0, format('单元格A1'));48 xlsWriteLabel(0, 1, format('单元格B1'));49 xlsWriteLabel(0, 2, format('单元格C1'));50 write_excel_line(1, 0, 'A2');51 write_excel_line(1, 1, 'B2');52 write_excel_line(1, 2, 'C2');53 write_excel_line(2, 0, 'A3');54 write_excel_line(2, 1, 'B3');55 write_excel_line(2, 2, 'C3');56 write_excel_line(3 , 0, '40');57 write_excel_line(3 , 1, '41');58 write_excel_line(3 , 2, '42');59 xlsEOF();
相关标签: php生成excel