PHP的Excel,但没有Spreadsheet_Excel_Writer

我需要在.xls文件中保存一些数据。 我正在尝试使用PEAR库Spreadsheet_Excel_Writer。 这是工作。 但是现在我正在主持没有PEAR。 因为,这是非常可怕的。

Spreadsheet_Excel_Writer有很多依赖关系。 我需要一个模块或代码,我可以包含在我的脚本中。

谢谢。

我使用电子表格作家很多,这是很好的,但如果你不需要多张或能够做一些格式化等,你总是只输出HTML和发送

header("Content-type: application/vnd.ms-excel") 

和“.xls”的扩展,然后Excel或OpenOffice的电子表格程序(我猜想,Mac的电子表格程序)将打开它,并将HTML格式化为电子表格。

这不是一个本地解决scheme,但最终,它对最终用户来说看起来相当不错。 你必须在你的html中使用表格,但你可以添加颜色/边框,填充,字体更改,rowspan,colspan等等,以便进行一些控制。 没有function或公式或多张,但。

这是一个鲜为人知的格式,从来没有真正的抓住,但MS Office支持所谓的Excel 2003 XML文件 – 这确实是XML,至less看起来像这样:

 <?xml version="1.0"?> <?mso-application progid="Excel.Sheet"?> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"> <Worksheet> <Row> <Cell> <Data ss:Type="String">First</Data> </Cell> </Row> </Worksheet> </Workbook> 

你可以很简单的生成这个文件,不需要任何PHP扩展,并且自2003年以来,它将在任何版本的MS Excel中正确打开。如果将文件扩展名重命名为.xls.xml则OpenOffice 2和3将正确打开它们

当用户打开此文件并将其保存在Excel中时,默认情况下,它将转换为传统的XLS文件。

正如@ Alexander.Plutov在评论中指出的那样,有一个用于编写这些文件的库 。

在IBM网站上有一个关于这种格式和PHP的有用的(更全面的)页面: http : //www.ibm.com/developerworks/opensource/library/os-phpexcel/#N101F7

从字面上看,PHPExcel: http ://phpexcel.codeplex.com/

我使用http://www.bettina-attack.de/jonny/view.php/projects/php_writeexcel/

我只是把它包括在许多项目中,它就像一个魅力。

请注意,Piskvor提供的源代码:

 <?xml version="1.0"?> <?mso-application progid="Excel.Sheet"?> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"> <Worksheet> <Row> <Cell> <Data ss:Type="String">First</Data> </Cell> </Row> </Worksheet> </Workbook> 

是不是一个有效的Excel文件(至less在我的版本 – Excel 2010中),将失败打开产生一个错误消息,因为它缺less两个必要的值在下面的示例中更正(缺less的部分是在一个WorkSheet你需要一个Table并且工作WorkSheet必须具有在ss:Name指定为string的ss:Name ):

 <?xml version="1.0"?> <?mso-application progid="Excel.Sheet"?> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"> <Worksheet ss:Name="test"> <Table> <Row> <Cell> <Data ss:Type="String">First</Data> </Cell> </Row> </Table> </Worksheet> </Workbook> 

这真的成​​为一个有效的Excel电子表格,并感谢Piskvor提醒我们这个美妙的开放和机器和人类可读的格式。