我怎样才能实现这一目标?
答案 0 :(得分:2)
我同意thomasmalt认为这不是明智的,但你应该做的是让你的用户可以在'用户'数据库表(如mysql)中设置一个cron时间,列为:'interval(INT)'和'last_update(DATETIME)'。所以每个用户都有自己的时间设置。然后,您决定允许的最低增量(例如1分钟),并且只让您的用户设置高于该值的时间。
然后每隔1分钟运行一次cron,检查“用户”表。查找间隔小于或等于“last_update”以来的时间的任何用户。然后为这些用户运行您的操作。这有效地为每个用户设置crons做同样的事情。
答案 1 :(得分:0)
这听起来通常是一件非常不明智的事情,但是如果你知道自己在做什么并理解所涉及的安全问题等等,我建议使用两个脚本来解决这个问题
向cron添加内容可能是一件非常危险的事情,只允许非常信任的用户这样做。任何网络解决方案都应被视为不安全,您应该格外小心,以确保任何输入都经过适当的审核。
答案 2 :(得分:0)
正如thomasmalt所说,在公共系统中这可能不明智......你不想让用户搞砸系统犯罪。
我建议您让用户在其控制面板中指定一天中的某个时间,并且每分钟运行一次cron脚本。在该脚本中,获取与当前时间匹配的用户并执行其脚本非常容易。它实现了同样的目标,更加冗长,代码更多,但更安全。