php生成excel

WBOY
WBOYOriginal
2016-06-23 14:34:181011Durchsuche

生成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();



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:php header 详解Nächster Artikel:php笔试(二)