用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4981|回复: 8
收起左侧

如果用PHP执行计划任务?(Linux独立主机)

[复制链接]
发表于 2013-6-18 00:23:33 | 显示全部楼层 |阅读模式
我的服务器是CentOS6,网站语言当然是CI,
关于计划任务,PHP执行的话可靠性不好,以下两个Linux命令才是王道:
at - 在指定时间执行一次任务;
crond - 是linux用来定期执行程序的命令。

场景一:
类似于淘宝上的自动到账,卖家发货后,10天自动到账(到账要执行MySQL命令并调用短信API发送短信)。
场景二:
拍卖, 有买家出价后,10分钟之内其他买家可以出更高的价格,如果10分钟内没有人出更高的价格,则当前出价领先者成交(成交要执行MySQL命令并调用短信API发送短信)。

这两个场景用Linux的 at 命令比较适合,问题是:如果用PHP程序把这些定时命令交给Linux的 at 命令?
发表于 2013-6-18 09:50:38 | 显示全部楼层
写个shell脚本不就好了么~~~~
发表于 2013-6-18 11:43:00 | 显示全部楼层
 楼主| 发表于 2013-6-18 12:21:52 | 显示全部楼层
yic_zhang 发表于 2013-6-18 09:50
写个shell脚本不就好了么~~~~

写个shell脚本,又回到了我提出的问题:如果用PHP程序把这些定时命令生成写个shell脚本并交给Linux去执行?
就拿我说的场景一来说,当买家在网页上点“确认收货”后,如果生成一个10天后自动执行的shell脚本并交给Linux去执行?
 楼主| 发表于 2013-6-18 12:23:27 | 显示全部楼层
longjianghu 发表于 2013-6-18 11:43
看看这个http://codeigniter.org.cn/user_guide/general/cli.html

这个可以用Linux的计划任务来执行PHP程序,却没有办法让PHP程序生成并执行Linux的计划任务。
发表于 2013-6-18 16:13:00 | 显示全部楼层
可以让 PHP 调用 shell 脚本,或者调用 linux 命令。
 楼主| 发表于 2013-6-19 10:30:26 | 显示全部楼层
Hex 发表于 2013-6-18 16:13
可以让 PHP 调用 shell 脚本,或者调用 linux 命令。

对的,谢谢! 必须这样的,问题是,如何实现呢?
发表于 2013-6-19 10:37:28 | 显示全部楼层
lujscn 发表于 2013-6-19 10:30
对的,谢谢! 必须这样的,问题是,如何实现呢?

执行脚本的需求非常常见,看看 PHP 函数 exec() 和关于进程的一些列函数,看看 PHP 手册吧。

 楼主| 发表于 2013-6-20 10:55:14 | 显示全部楼层
Hex 发表于 2013-6-19 10:37
执行脚本的需求非常常见,看看 PHP 函数 exec() 和关于进程的一些列函数,看看 PHP 手册吧。

...

感谢HEX,这样是说到点子上了,呵呵,我要研究研究,谢谢啦!

本版积分规则