windows计划任务,执行php(共8篇)
在WINDOWS中设置计划任务执行PHP文件 在网上找了些WINDOWS执行PHP的计划任务的方法,有一个写得很全,可惜在我这竟然没通过。最后不得不综合各门派的方法,才能在我这运行成功。 1、写一个PHP程序,命名为,内容如下所示: 程序大胆地写,什么include\require尽管用,都没问题 2、新建Bat文件,命名为,内容如下所示: 1D:\php\-qD:\website\ //相应目录自己改上 3、建立WINDOWS计划任务: 开始–>控制面板–>任务计划–>添加任务计划 浏览文件夹选择上面的bat文件 设置时间和密码 保存即可了。 4、over!可以右键计划任务点“运行”试试 php定时执行任务的几个方法 XX-05-1116:35:12|分类:|标签:|字号大中小订阅 PHP的实现决定了它没有Java和.Net这种AppServer的概念,而http协议是一个无状态的协议,php只能被用户触发,被调用,调用后会自动退出内存,没有常驻内存,就没有办法准确的定时处理 那么,如果需要用PHP定时执行某些任务的话,可以有以下俩个方法: 1. 2. 3.Linux下crontab,windows下计划任务找个被频繁调用的网页,里面加上一个检测代码set_time_limit(0); ignore_user_abort(true); 死循环 第一个方法是最常见的,如果php服务器上没有权限去crontab,也可以找一个自己的机器定期crontab去请求服务器 第二种方法,论坛上定时清理新帖基本上就是这么实现的,如果人气不旺的话,可以考虑去别的火爆点的论坛里面发个图片,调用自己的php来实现一个trigger就好了。Discuz!是判断在00:00之后,第一个执行者去执行的。 第三种比较不靠谱,Apache重启了就得重新访问,fastcgi倒是会好一点。 下面的这段代码,可以在当前文件夹下,生成一个,并每隔20秒,往里面写入一个时间戳,无论客户端是否关闭浏览器。 d:\php\cli\ Pause 那个D:\php\cli\是我的PHP安装文件所在目录。就是windowsPHP命令行模式的程序。 好的,我们保存这个文件为然后的windows中的计划任务中添加一个任务,让操作系统在某个时间来运行这个批处理文件。 2、如果您使用Unix系统,您需要在您的PHP脚本的最前面加上一行特殊的代码,使得它能够被执行,这样系统就能知道用什么样的程序要运行该脚本。为Unix系统 增加的第一行代码不会影响该脚本在Windows下的运行,因此您也可以用该方法编写跨平台的脚本程序。以下是一个简单的PHP命令行程序的范例。 四、例子: E:\web\ #!/usr/bin/php dbQuery($query); $username='sdfsdfdsd'; $sex="先生"; $accounts="sdfasdfasdfsad"; $password="sdfsadfsdasdasddssfds"; $message=" $message=addslashes($message); eval_r("\$message=\"$message\";"); $mail=newSendMail('wfits@',$mailtemplate[0]['mt_subject'], nl2br($message)); if($mail->Send()) { $feedback="修改确认信息已发送到您的注册Email,当前登录已被注销。\\n请注意查收确认信,并取得新的登录密码。"; echo$feedback; } ?> 写个bat文件。 @D:\php\cli\E:\web\>d:\php\cli\ Pause 保存为:放在@D:\php\cli\目录下 在window中添加计划任务,然后就可以啦! 五、说明。 1、我发送邮件用的是模板在数据库中存着,还有两个邮件发送类就不提供了,要的 话可以联系我。 2、在使用requrie_once时要用绝对路径。 3、PHP的命令行模式能使得PHP脚本能完全独立于WEB服务器单独运行,所以要 是大量发送邮件时就能减轻服务器负担。 4、再一次建议大家看看PHP手册第23.章PHP的命令行模式。 其实这不是真正的实现邮件自动发送的方法,但是在无桌面应用程序中的WEB方式下,这可能是一个比较好的方式吧~!,我想那种真正实现