【问题标题】:php open excel file in browserphp在浏览器中打开excel文件
【发布时间】:2011-04-21 03:45:33
【问题描述】:

如何在浏览器中打开excel文件,

我不想要强制下载对话框之类的东西,

我想在浏览器中打开excel,就像在gmail中一样,当你点击收件箱中的excel文件时,它会显示浏览器本身,

同理,在php中怎么做。

【问题讨论】:

  • 您的意思是当它在 Google 文档中打开时?这是一个完整的网络 Excel 克隆。
  • Afaik,您需要每个应该打开 Office 文档的浏览器的扩展/插件(就像您需要 Adob​​e Reader 一样)。我不确定这些在 IE 中的可用性。
  • 嗯,有一个在线 mixrosoft 办公解决方案。但我不知道如何向它提供文件,然后将其展示给其他人,因为它需要一个真实帐户。 gmail 中的东西是 google 制作的完整解决方案。
  • 您是否需要在 Excel 中实际打开文件,允许用户编辑单元格?还是您只需要在(只读)网格中显示 Excel 文件中的数据?
  • @Bharanikumar - 在这种情况下,为什么不看看 PHPExcel 之类的库,它可以读取您的 Excel 文件,然后写出这些工作表的格式化静态 HTML 版本

标签: php com


【解决方案1】:

使用PHPExcel

include 'PHPExcel/IOFactory.php';
$inputFileType = 'Excel5';
$inputFileName = 'MyExcelFile.xls';

$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML');
$objWriter->save('php://output');
exit;

编辑

如果您的 Excel 文件是 Excel 2007 (xlsx) 或更高版本,而不是 Excel 2003 (xls) 或更早版本

include 'PHPExcel/IOFactory.php';
$inputFileType = 'Excel2007';
$inputFileName = 'MyExcelFile.xlsx';

$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML');
$objWriter->save('php://output');
exit;

【讨论】:

  • 收到错误致命错误:未捕获的异常 'Exception' 带有消息'文件名 test.xlsx 未被识别为
  • @Bharanikumar - 如果您的文件是 Excel 2007 (xlsx) OpenXML 格式,那么您需要使用适当的阅读器,而不是我最初示例中的 Excel5 BIFF 阅读器......请参阅编辑。
  • 对于像 gmail 这样的精确设计方面,我们应该使用任何 css 或者我应该调用任何 php 类(如 excel 网格)
  • @Bharanikumar - 然后编写您自己的 HTML Writer 变体,现有代码应该为您提供所需的基础。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-02-19
  • 2014-03-19
  • 1970-01-01
  • 2015-04-22
  • 1970-01-01
  • 2017-01-01
  • 1970-01-01
相关资源
最近更新 更多