有一个报告,服务器在我的内联网中自动创建。
我可以通过这样的网址访问它并下载它:
http://www1.intranet.com/reportingtool.asp?settings=var&export = ok
我想把它和PHPExcel一起使用。
$objPHPExcel = PHPExcel_IOFactory::load("file.xls");
当我使用网址.xls swop 文件时,它不起作用。
我可以使用哪种替代方法来避免通过手动下载 excel 文件并在代码中写入文件名来避免该步骤?
你不能...
要解析 xls 文件,PHPExcel 需要能够在从 OLE 流读取数据时在文件中前后移动文件指针;对于通过 url 检索的文件,这不是一个选项,只有服务器文件系统上物理上可用的文件。
解决方法(下载到临时文件):
$url = 'http://www1.intranet.com/reportingtool.asp?settings=var&export=ok';
$tmpfname = tempnam(sys_get_temp_dir());
file_put_contents(
$tmpfname,
file_get_contents($url)
);
$objPHPExcel = PHPExcel_IOFactory::load($tmpfname);
尽管之后您可能需要手动删除$tmpfname