专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »PHP教程 » php定时执行程序:Windows定时自动执行PHP程序 »正文

php定时执行程序:Windows定时自动执行PHP程序

来源: 发布时间:星期一, 2009年1月12日 浏览:300次 评论:0
  相信不少读者(PHP爱好者)在工作、学习过程中经常抱怨:在WIN如何让PHP定时自动发信呢??如何让MYSQL实现自动备份而无后顾的忧呢??如 果完全依靠手工进行当然也可以实现但操作上似乎过于繁琐了点!别着急利用系统任务计划(Windows 98称的为计划任务)可轻易解决这问题功能往往被很多用户忽略或者未曾想到:)

  所谓任务计划就是由计算机自动用户事先设置好应用从而达到简化用户操作利用Windows 2000任务计划(相当和*NIX下cron这里不再对其详述)我们可以安排任何脚本、或文档在最恰当时候运行从而满足自己需 要下面以Windows 2000为例

  具体来说我们若需利用任务计划自动运行则应执行如下步骤:

  单击"开始"按钮然后依次选择""→"附件"→"系统工具"→"任务计划"(或者是"设置"→"控制面板"→"任务计划")启动Windows 2000任务计划管理

  在"任务计划"窗口中双击"添加任务计划"图标启动系统"任务计划向导"然后单击"下步"按钮在给出列表中选择需要自动运行应用然后单击"下步"按钮

  设置适当任务计划名称并选择自动执行这个任务时间频率(如每天、每星期、每月、次性、每次启动计算机时、每次登录时等)然后单击"下步"按钮此时系统将会要求用户对运行具体时间进行设置如几号、几点钟、哪几个时间段才能运行等我们只需根据自己需要加以设置即可

  接下来系统将会要求用户设置适当用户名及密码(如图5所示)以便系统今后能自动加以运行

  最后我们只需单击"完成"按钮即可将相应任务添加到Windows 2000任务计划此后它就会自动"记住"这个任务旦系统时间及相关条件和用户设置计划相符它就会自动用户所指定应用十分方 便(每次启动Windows 2000时候任务计划都会自动启动并在后台运行确保用户计划能够按时执行)

  现在我们来测试下刚才所建任务是否成功鼠标右键单击"php"图标(如图6所示)在弹出菜单里面选择"运行"般情况下图标只要这样 激活运行就可以正常启动如果运行失败可查看用户和密码是否设置正确还有确定"Task Scheduler"服务是否已启动本人当初就是为了节省系统资源把它关掉了导致运行失败害我找了大半天另外也可从"系统日志"里查看到底是什么原 因造成运行失败

  好了讲了这么多任务计划应用现在我们切入正题下面将介绍两个例子:

  、让PHP定时运行

  编辑如下代码并保存为test.php:

  PHP: 

  --------------------------------------------------------------------------------

<?php  
$fp = @fopen("test.txt", "a+");  
fwrite($fp, date("Y-m-d H:i:s") . " 让PHP定时运行吧!n");  
fclose($fp);  
?>


  添加个任务计划在(如图2所示)这步输入命令:

  D:php4php.exe -q D:php4test.php

  时间设置为每隔1分钟运行然后运行这个任务

  现在我们来看看d:php4test.txt文件内容时候是否成功如果内容为如下所示那么恭喜你成功了

  2003-03-03 11:08:01 让PHP定时运行吧!

  2003-03-03 11:09:02 让PHP定时运行吧!

  2003-03-03 11:10:01 让PHP定时运行吧!

  2003-03-03 11:11:02 让PHP定时运行吧!

   2、让MYSQL实现自动备份

  编辑如下代码并保存为backup.php如果要压缩可以拷贝个rar.exe:

  PHP: 

  --------------------------------------------------------------------------------

<?php
($argc != 2 || in_.gif' />($argv[1], .gif' />('--help', '-?'))) {
?>
backup Ver 0.01, for Win95/Win98/WinNT/Win2000/WinXP _disibledevent= "d:php4
ar";
@exec("$dump_tool --opt -u user -ppassword $dbname > ./$dbname.sql");
@exec("$rar_tool a -ag_yyyy_mm_dd_hh_mm $dbname.rar $dbname.sql");
@unlink("$dbname.sql");
echo "Backup complete!";
}
?>




  添加个任务计划在(如图2所示)这步输入命令:

  D:php4php.exe -q D:php4backup.php databasename

  时间设置为每天运行然后运行这个任务

  最后会在d:php4目录下生成个以数据库名和当前时间组成rar文件

  恭喜你!大功告成了!

  当然备份方式有很多种读者可按照自己喜欢去做!

  以上是原著.结合本人实贱,补充介绍说明如下:

  如果出现:

  在试着设置任务帐户信息时出现

  指定是:

  0x80070005:拒绝访问

  您没有运行所请求操作权限

  在上面'"4.接下来系统将会要求用户设置适当用户名及密码以便系统今后能自动加以运行".这里最好用"system"用户,密码可为空.

  这个system权限非常的高,比你administrator还要高,所以你在运行命令时候千万不要乱来,这个可是什么提示都没有就会无条件执行,这个权限下你kill核心进程都行.

  上面2、添加个任务计划在这步输入命令:

  D:php4php.exe -q D:php4test.php

  正确形式应为

  "D:php4php.exe" -q "D:php4test.php"

  即路径要用双引号括住.



0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: