当我上传excel文件时,我使用COM()打开并自动将其转换为xml。
它工作正常,但是当我运行它时,它总是显示来自Microsoft Excel的消息: 此位置中已存在名为“'”的文件。你想替换它吗? 我可以选择是否和取消。 通常我会选择是。但我不希望用户每次都点击是。 我能禁用吗? 如果需要发布任何相关代码,请通知我。 谢谢你 更新以下是使用unlink()的代码的一部分。
$workbook = $_FILES['file']['tmp_name']
$sheet = "Sheet1";
$ext = substr($workbook, strrpos($workbook, '.') + 1);
$ex = new COM("Excel.sheet") or die("Did not connect");
//Open the workbook that we want to use.
$wkb = $ex->application->Workbooks->Open($workbook) or die("Did not open");
$path = "D:\b2\\test1.xml";
$format = 46;
unlink($path);
$path = "D:\b2\\test1.xml";
//Create a copy of the workbook, so the original workbook will be preserved.
$ex->Application->ActiveWorkbook->SaveAs($path, $format);
使用它是否正确?因为它似乎不起作用
答案 0 :(得分:3)
如果您总是要覆盖,最简单的方法可能就是在Excel打开文件之前先删除文件。删除文件的PHP函数是unlink()
答案 1 :(得分:0)
我通过添加这一行来解决它。
$ex->application->displayAlerts = 0;