有没有好点的生成Excel的类啊 你想生成真正的excel文件,还是xml类型的excel文件?我有一个,也许对你有用。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <?phpclass Excel_XML{ private $header = "<?xml version=\"1.0\" encoding=\"gb2312\"?\><Workbook xmlns=\"urn:schemas-microsoft-com:office:spreadsheet\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns:ss=\"urn:schemas-microsoft-com:office:spreadsheet\" xmlns:html=\"http://www.w3.org/TR/REC-html40\">"; private $footer = "</Workbook>"; private $lines = array (); private $worksheet_title = "Table1"; private function addRow ($array) { $cells = ""; foreach ($array as $k => $v): $cells .= "<Cell><Data ss:Type=\"String\">" . $v . "</Data></Cell>\n"; endforeach; $this->lines[] = "<Row>\n" . $cells . "</Row>\n"; } public function addArray ($array) { // run through the array and add them into rows foreach ($array as $k => $v): $this->addRow ($v); endforeach; } public function setWorksheetTitle ($title) { // strip out special chars first $title = preg_replace ("/[\\\|:|\/|\?|\*|\[|\]]/", "", $title); // now cut it to the allowed length $title = substr ($title, 0, 31); // set title $this->worksheet_title = $title; } function generateXML ($filename) { // deliver header (as recommended in php manual) header("Content-Type: application/vnd.ms-excel; charset=gb2312"); header("Content-Disposition: inline; filename=\"" . $filename . ".xls\""); // print out document to the browser // need to use stripslashes for the damn ">" echo stripslashes ($this->header); echo "\n<Worksheet ss:Name=\"" . $this->worksheet_title . "\">\n<Table>\n"; echo "<Column ss:Index=\"1\" ss:AutoFitWidth=\"0\" ss:Width=\"110\"/>\n"; echo implode ("\n", $this->lines); echo "</Table>\n</Worksheet>\n"; echo $this->footer; }}?>//调用require ("class-excel-xml.inc.php");$xls = new Excel_XML();/*$_docTitle = array ( 1 => array ( "编号", "姓名","性别", "单位", "分站点", "必修课版次", "总学时", "作业完成数", "作业合格数", "作业总评", "论文题目", "论文成绩", "学习总评", "注册情况","注册时间") );*/$xls->addArray($_docTitle);$xls->addArray($_userdataimportdb);$xls->generateXML($setname);//*/ Fatal error: Call to undefined function oci_connect() 应该要怎么解决 PHP引用问题 PHP制作按指定时间变化的广告 请教关于时间的一个编程 伪静态问题 请问关于一个长文章字符截取的问题,大家说怎么做好? mysql插入记录报错,请问是什么原因 有谁用eclipse吗? 我是想学php的人,刚开始安装php,各位请帮我 同一页中,js的变量怎样与php交互呀? php 文件删除 有没有好点的生成Excel的类啊
class Excel_XML
{
private $header = "<?xml version=\"1.0\" encoding=\"gb2312\"?\>
<Workbook xmlns=\"urn:schemas-microsoft-com:office:spreadsheet\"
xmlns:x=\"urn:schemas-microsoft-com:office:excel\"
xmlns:ss=\"urn:schemas-microsoft-com:office:spreadsheet\"
xmlns:html=\"http://www.w3.org/TR/REC-html40\">"; private $footer = "</Workbook>";
private $lines = array ();
private $worksheet_title = "Table1"; private function addRow ($array)
{
$cells = "";
foreach ($array as $k => $v): $cells .= "<Cell><Data ss:Type=\"String\">" . $v . "</Data></Cell>\n"; endforeach;
$this->lines[] = "<Row>\n" . $cells . "</Row>\n"; } public function addArray ($array)
{ // run through the array and add them into rows
foreach ($array as $k => $v):
$this->addRow ($v);
endforeach; } public function setWorksheetTitle ($title)
{ // strip out special chars first
$title = preg_replace ("/[\\\|:|\/|\?|\*|\[|\]]/", "", $title); // now cut it to the allowed length
$title = substr ($title, 0, 31); // set title
$this->worksheet_title = $title; } function generateXML ($filename)
{ // deliver header (as recommended in php manual)
header("Content-Type: application/vnd.ms-excel; charset=gb2312");
header("Content-Disposition: inline; filename=\"" . $filename . ".xls\""); // print out document to the browser
// need to use stripslashes for the damn ">"
echo stripslashes ($this->header);
echo "\n<Worksheet ss:Name=\"" . $this->worksheet_title . "\">\n<Table>\n";
echo "<Column ss:Index=\"1\" ss:AutoFitWidth=\"0\" ss:Width=\"110\"/>\n";
echo implode ("\n", $this->lines);
echo "</Table>\n</Worksheet>\n";
echo $this->footer; }}
?>//调用
require ("class-excel-xml.inc.php");$xls = new Excel_XML();/*
$_docTitle = array (
1 => array (
"编号", "姓名","性别", "单位", "分站点",
"必修课版次", "总学时", "作业完成数", "作业合格数",
"作业总评", "论文题目", "论文成绩", "学习总评", "注册情况","注册时间")
);
*/$xls->addArray($_docTitle);
$xls->addArray($_userdataimportdb);
$xls->generateXML($setname);
//*/