【发布时间】:2011-10-05 09:31:20
【问题描述】:
我正在为我的 symfony 应用程序创建一个自动化进程,它是作为 symfony 中的插件编写的。在这个插件中,我需要添加一个 cron 作业。现在我手动添加它。我可以从 symfony 打开 cron 选项卡并在 cron 选项卡上写一些东西吗???如果是这样 我只是运行一个任务并从 cli 添加 cron 作业。 有任何建议来完成这项工作。
【问题讨论】:
我正在为我的 symfony 应用程序创建一个自动化进程,它是作为 symfony 中的插件编写的。在这个插件中,我需要添加一个 cron 作业。现在我手动添加它。我可以从 symfony 打开 cron 选项卡并在 cron 选项卡上写一些东西吗???如果是这样 我只是运行一个任务并从 cli 添加 cron 作业。 有任何建议来完成这项工作。
【问题讨论】:
我假设您知道如何从命令行执行此操作。在 Symfony 任务中,您使用 PHP 标准中的函数 passthru() 调用系统命令。
PHP 中的以下 2 个函数可能会有所帮助。
function mysystem($cmd)
{
passthru($cmd, $val);
if ($val != 0)
{
mydie("Command $cmd exited with nonzero exit status $val\n");
}
}
// PHP's die() exits with a happy status, which is useless in scripts
function mydie($s)
{
fwrite(STDERR, $s);
exit(1);
}
您可以通过脚本执行类似于以下的操作。
只需使用相同的策略,但从 PHP 使用上述函数。应该可以的。
【讨论】: