<?php
class Excel{
/**
*
*构建以个xml文件
*/
var $header = "<?xml version=\"1.0\" encoding=\"UTF-8\"?\>
<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\">";
/**
以Workbook开头,根据xml规则,就要以Workbook结尾
*/
var $footer = "</Workbook>";
/**
*
* 新建一个数组
*/
var $lines = array ();
/**
*
* 给当前工作表一个默认的名称
*/
var $worksheet_title = "Table1";
/**
*
* 处理一维数组,每一行
*
*/
function addRow ($array) {
// 每一行都由很多单元格组成,初始化这个单元格集合,采用字符串拼接的方式
$cells = "";
// foreach key -> write value into cells
foreach ($array as $k => $v):
$cells .= "<Cell><Data ss:Type=\"String\">" . $v . "</Data></Cell>\n";
endforeach;
// 把这些单元格合成一行
$this->lines[] = "<Row>\n" . $cells . "</Row>\n";
}
/**
*
*
*
* 处理二维数组
*/
function addArray ($array) {
// run through the array and add them into rows
foreach ($array as $k => $v):
$this->addRow ($v);
endforeach;
}
/**
*
*
*
* 设置工作薄的名称
*/
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;
}
/**
*
* 设置php下载名字,以及进行中文的乱码处理
*/
function generateXML ($filename,$widthArr) {
$ua = $_SERVER["HTTP_USER_AGENT"];
$encoded_filename = urlencode($filename);
$encoded_filename = str_replace("+", "%20", $encoded_filename);
header("Content-Type: application/vnd.ms-excel; charset=UTF-8");
if (preg_match("/MSIE/", $ua)) {
header('Content-Disposition: attachment; filename="' . $encoded_filename . '.xls"');
} else if (preg_match("/Firefox/", $ua)) {
header('Content-Disposition: attachment; filename*="utf8\'\'' . $filename . '.xls"');
} else {
header('Content-Disposition: attachment; filename="' . $filename . '.xls"');
}
echo stripslashes ($this->header); //去掉反斜线字符,因为在 header的定义中的反斜线用来转义
echo "\n<Worksheet ss:Name=\"" . $this->worksheet_title . "\">\n<Table>\n";
print_r($widthArr);
$length=sizeof($widthArr);
for ($i = 0; $i <$length; $i++) {
$j=$i+1;
echo "<Column ss:Index=\"$j\" ss:AutoFitWidth=\"1\" ss:Width=\"$widthArr[$i]\"/>\n";
}
echo implode ("\n", $this->lines);
echo "</Table>\n</Worksheet>\n";
echo $this->footer;
}
}
?>
分享到:
相关推荐
在这个主题中,我们将深入探讨如何使用PHP生成Excel文件,主要参考`demo.php`提供的示例代码。 首先,PHP生成Excel文件最常用的是使用PHPExcel库。PHPExcel库提供了强大的功能,可以创建、读取和修改各种Excel文件...
简单的php生成excel的类。操作很简单,直接传入相应的抬头和数据就行了。
这篇博客“PHP生成excel文件”可能介绍了如何利用PHP创建和操作Excel文件,这对于数据分析、报表生成或用户下载功能非常有用。 生成Excel文件在PHP中最常见的库是PHPExcel和its newer version,叫做phpspreadsheet...
在您提供的信息中,标题和描述提到了一个“php生成excel的标准类库”,这很可能是指PHPExcel或者类似的库,如phpSpreadsheet,它们为PHP提供了强大的Excel文件操作功能。 PHPExcel(或phpSpreadsheet)是PHP中广泛...
总的来说,PHPSpreadsheet是PHP生成Excel文件的强大工具,它的灵活性和易用性使其成为开发中的首选。结合良好的编程实践,你可以轻松地实现从数据库导出数据到Excel、自定义报表格式等功能,大大提高了工作效率。
以下将详细讲解PHP生成Excel的几种方法以及如何解决相关问题。 1. **使用PHP的原生函数** PHP虽然没有内置专门用于生成Excel的函数,但可以通过处理CSV(逗号分隔值)文件来实现。`fputcsv()`函数可以用来写入CSV...
一个php生成excel文件到指定目录的函数类。检查别名导入,加载当前项目应用类,加载其他应用类库,如果类不存在则导入类库文件,需要指定导出的数据字段,排序必须和title一致,就是和查出数据的数组key值。
标题"php生成excel表格"指的是利用PHP编程语言来创建和处理Excel文件的过程。这通常涉及到以下几个关键知识点: 1. **PHPExcel库**:PHPExcel是PHP中一个功能强大的库,能够读取和写入多种电子表格格式,包括...
本文将详细探讨如何解决在用PHP生成Excel时遇到的单元格内无法换行的问题。 在PHP中生成Excel文件,可以使用多种方法,包括但不限于使用第三方库如PhpSpreadsheet或者直接使用HTML和CSS样式来生成。如果采用直接...
压缩包中的“02php生成excel文件源代码”文件很可能是该类库的核心代码文件。这个文件可能包含了实现Excel文件生成的所有函数和类,包括但不限于创建工作簿、工作表,添加单元格数据,设置样式等功能。开发者可以...
本文将详细介绍一个名为"PHP生成Excel的类库"的工具,它被誉为最新版且功能强大。 这个类库的核心功能是使PHP开发者能够在服务器端生成XLS或XLSX格式的Excel文件,而无需依赖Microsoft Office或其他桌面应用程序。...
### PHP生成Excel的基本原理 #### XML格式 Excel文件本质上是基于XML的格式。在早期版本中(如.xls),虽然它们看起来像是二进制文件,但实际上可以被解压为多个XML文件和其他资源。因此,创建Excel文件的一种常见...
一个php生成excel文件类源代码,从excel复制的xml规格,包含一个单一的工作表名称,添加一个单行的文档字符串$,添加一个数组到文档,设置工作表名称,生成excel文件。
"PHP生成Excel报表并且修正编码格式错误事例带图"是一个关于如何使用PHP创建Excel文件并处理可能出现的编码问题的教程。这个教程可能包含了代码示例和流程图,帮助开发者更好地理解和实现这一功能。 首先,我们要...
php生成excel,已修改完全可用,网上那些下了半天都是错,不能忍啊。。。
以下是一段使用PHP生成Excel文件的简单代码示例: ```php <?php header("Content-type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=test.xls"); // 假设我们有从数据库获取...
PHP,PHPExcel生成Excel代码
介绍一个php生成excel文件到指定目录的函数类。检查别名导入,加载当前项目应用类,加载其他应用类库,如果类不存在则导入类库文件,需要指定导出的数据字段,排序必须和title一致,就是和查出数据的数组key值。
PHPExcel是PHP中一个非常...总的来说,PHPExcel-1.7.0是PHP开发者处理Excel文件的强大工具,无论是在报表生成、数据导入导出还是数据分析场景中,都能发挥重要作用。掌握其基本用法和高级特性,能极大提升工作效率。
总之,"基于PHP的-excel用于生成excel文档的函数库源码.zip"提供了一个学习和实践PHP生成Excel文档的平台。通过学习和使用这些源代码,开发者可以提升自己的技能,更好地服务于数据处理和报表生成的需求。