2012-10-16 83 views
0

我想安排一个php函数在用户输入的预定时间执行。另外我的网站托管在Windows机器上,所以我正在寻找一个基于Windows的解决方案。我做了一个函数,它看起来像这样:调度任务使用任务调度在php

function sendemail() 
{ 
    $cmd = 'schtasks /create /sc ONCE /tn emailtask /tr http://example.com/index.php/emailnotifications/sendemail'; 
    exec ($cmd); 
} 

在上面的代码emailnotifications是我的控制器和sendemail是我的功能,我已经写了我的代码。有谁知道一个解决方案,使用PHP代码在Windows任务调度中创建计划任务?

+0

它是如何安排在anohter机器上,你做了一个PHP脚本的wget? –

+0

两者都不在同一台机器上 –

回答

1

我有这样的要求一次(意味着服务器是Windows),我用cronw以及良好的结果。我在你的策略中建议的唯一变化是每分钟调用一次脚本,并将所有日程安排放在数据库表中。每次sendemail函数被执行时,它都会检查是否有任何电子邮件计划在此时出去,它会发送它们并将其标记为已处理。这种方法具有很强的可扩展性,所以如果您有数百万人安排电子邮件,那么您最终不会创建数百万个计划任务。

+0

感谢您的回复。是的,一定会通过cronw,并会让你知道我是否得到预期的结果。 –