为了账号安全,请及时绑定邮箱和手机立即绑定

通过批处理脚本/任务调度程序执行 PHPSpreadsheet

通过批处理脚本/任务调度程序执行 PHPSpreadsheet

PHP
UYOU 2022-01-02 18:01:48
我创建了两个 php 文件,分别执行两个单独的任务。1. 第一个脚本使用 PHPSpreadsheet 创建一个填充的我的报告模板,它是一个 xlsx 文件。当直接通过浏览器(谷歌浏览器)运行时,这非常有效。2. 第二个脚本使用 PHPMailer 提取此文件并将其附加到电子邮件中。当通过浏览器执行时,这再次完美运行。我曾尝试使用批处理文件运行相同的脚本,但这是第一部分失败的地方。Xlsx 文件永远不会被创建,因此发送电子邮件时没有附加文档。我尝试通过批处理脚本单独运行每个脚本。第二部分(发送邮件)按预期工作。通过批处理脚本创建文件似乎是问题所在。REM This adds the folder containing php.exe to the pathPATH=%PATH%;C:\phpREM Change Directory to the folder containing your scriptCD C:\Apache24\htdocs\phpspreadsheet\reportingREM Executephp report_v1.1.phpREM Change Directory to the folder containing your scriptCD C:\Apache24\htdocs\AutomationREM Executephp report.php我想自动化这两个脚本以按顺序运行,以便我可以自动将报告发送给相关收件人。我没有从第一个脚本中得到任何错误消息,在通过命令行执行它进行测试时,终端屏幕上只有很多随机字符。
查看完整描述

1 回答

?
Qyouu

TA贡献1786条经验 获得超11个赞

更新我要阅读的代码的最后一部分

$writer->save(php_sapi_name() === 'cli' ? 'report_name.xlsx' : 'php://output');

成功了。感谢@Hunman 提供建议的解决方案。


查看完整回答
反对 回复 2022-01-02
  • 1 回答
  • 0 关注
  • 130 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信