Maison  >  Article  >  développement back-end  >  Windows exécute PHP régulièrement

Windows exécute PHP régulièrement

小云云
小云云original
2018-03-10 10:28:183083parcourir

Je crois que de nombreux lecteurs (passionnés de PHP) se plaignent souvent pendant le processus de travail et d'études : Comment faire en sorte que PHP envoie automatiquement des e-mails à intervalles réguliers dans WIN ? ? Comment faire en sorte que MYSQL réalise une sauvegarde automatique sans soucis ? ? Bien sûr, cela peut se faire entièrement manuellement, mais l’opération semble un peu trop lourde ! Ne vous inquiétez pas, ce problème peut être facilement résolu en utilisant le planificateur de tâches du système (appelé tâche planifiée dans Windows 98). Cette fonctionnalité est souvent négligée ou jamais envisagée par de nombreux utilisateurs :).

Le soi-disant plan de tâches permet à l'ordinateur d'appeler automatiquement le programme d'application défini par l'utilisateur à l'avance, simplifiant ainsi le fonctionnement de l'utilisateur. Grâce au planificateur de tâches de Windows 2000 (équivalent du programme cron sous *NIX, qui ne sera pas décrit en détail ici), nous pouvons planifier l'exécution de n'importe quel script, programme ou document au moment le plus approprié pour répondre à nos besoins. Ce qui suit prend Windows 2000 comme exemple.

Plus précisément, si nous devons utiliser le planificateur de tâches pour qu'il s'exécute automatiquement, nous devons effectuer les étapes suivantes :

1. Cliquez sur le bouton "Démarrer", puis sélectionnez "Programmes" → " Accessoires" → "Outils système" → "Planification des tâches" (ou "Paramètres" → "Panneau de configuration" → "Planification des tâches") pour démarrer le programme de gestion de la planification des tâches de Windows 2000.

2. Double-cliquez sur l'icône « Ajouter un plan de tâches » dans la fenêtre « Plan de tâches » pour démarrer « l'Assistant de plan de tâches » du système, puis cliquez sur le bouton « Suivant » et sélectionnez le programme souhaité parmi les programmes donnés. liste des programmes. Exécutez automatiquement l'application et cliquez sur le bouton "Suivant".
Définissez un nom de planification de tâche approprié et sélectionnez la fréquence de temps pour effectuer automatiquement cette tâche (telle que quotidienne, hebdomadaire, mensuelle, ponctuelle, à chaque démarrage de l'ordinateur, à chaque connexion, etc.), puis cliquez sur le bouton « Suivant ».
À ce moment-là, le système demandera à l'utilisateur de définir l'heure spécifique d'exécution du programme, comme le jour, l'heure, la période pendant laquelle il peut s'exécuter, etc. Il suffit de le définir en fonction de notre propres besoins.

4. Ensuite, le système demandera à l'utilisateur de définir un nom d'utilisateur et un mot de passe appropriés (comme indiqué dans la figure 5) afin que le système puisse fonctionner automatiquement à l'avenir.

5. Enfin, il suffit de cliquer sur le bouton "Terminer" pour ajouter la tâche correspondante au planificateur de tâches de Windows 2000. Après cela, il "se souviendra" automatiquement de la tâche une fois l'heure système et si les conditions pertinentes correspondent au plan défini par l'utilisateur, il appellera automatiquement l'application spécifiée par l'utilisateur, ce qui est très pratique (chaque fois que vous démarrez Windows 2000, le planificateur de tâches démarre automatiquement et s'exécute en arrière-plan pour garantir que l'utilisateur le plan peut être planifié à temps et mis en œuvre).

Testons maintenant si la tâche que nous venons de créer a réussi. Cliquez avec le bouton droit sur l'icône du programme « php » (comme illustré dans la figure 6) et sélectionnez « Exécuter » dans le menu contextuel. Dans des circonstances normales, l'icône du programme peut démarrer normalement tant qu'elle est activée de cette manière. Si l'opération échoue, vous pouvez vérifier si l'utilisateur et le mot de passe sont correctement définis et confirmer si le service "Planificateur de tâches" a été démarré. Je l'ai désactivé afin d'économiser les ressources du système, ce qui a provoqué l'échec de l'opération, ce qui a coûté cher. j'ai mis longtemps à trouver. De plus, vous pouvez également consulter le « journal système » pour voir la cause de l'échec de l'opération.

Bon, après avoir parlé de tant d'applications de planification de tâches, entrons dans le vif du sujet. Deux exemples seront présentés ci-dessous :

1. Laissez PHP s'exécuter régulièrement !
1. Modifiez le code suivant et enregistrez-le sous test.php :

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

2. Ajoutez un plan de tâches et entrez la commande dans cette étape (comme indiqué dans la figure 2) : D: /php4/php.exe -q D:/php4/test.php

3. Définissez l'heure d'exécution toutes les minutes, puis exécutez la tâche.

4. Voyons maintenant si le contenu du fichier d:/php4/test.txt est réussi. Si le contenu est tel qu'indiqué ci-dessous, félicitations pour votre réussite.

2003-03-03 11:08:01 Laissez PHP fonctionner régulièrement !
2003-03-03 11:09:02 Laissez PHP fonctionner régulièrement !
2003-03-03 11:10:01 Laissez PHP fonctionner régulièrement !
2003-03-03 11:11:02 Laissez PHP fonctionner régulièrement !

2. Rendre la sauvegarde automatique possible pour MYSQL !
1. Modifiez le code suivant et enregistrez-le sous backup.php Si vous souhaitez le compresser, vous pouvez copier un rar.exe :

.
<?php 
 if ($argc != 2 || in_array($argv[1], array(&#39;--help&#39;, &#39;-?&#39;))) { 
 ?>
backup  Ver 0.01, for Win95/Win98/WinNT/Win2000/WinXP on i32 
 Copyright (C) 2000 ptker All rights reserved. 
 This is free software,and you are welcome to modify and redistribute it 
 under the GPL license 
 PHP Shell script for the backup MySQL database. 
 Usage: <?php echo $argv[0]; ?> <option> 
   <option> can be database name you would like to backup. 
   With the --help, or -? options, you can get this help and exit. 
 <?php 
 } else { 
     $dbname = $argv[1]; 
     $dump_tool = "c://mysql//bin//mysqldump"; 
     $rar_tool = "d://php4//rar"; 
     @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、添加一个任务计划,在(如图2所示)这一步输入命令:
   D:/php4/php.exe -q D:/php4/backup.php databasename
3、时间设置为每天运行一次,然后运行这个任务。
4、最后会在d:/php4/目录下生成一个以数据库名和当前时间组成的rar文件。
5、恭喜你!大功告成了!
    当然备份方式有很多种,读者可按照自己喜欢的去做!
以上是原著.结合本人实贱,补充说明如下:

1. 如果出现错误:
           在试着设置任务帐户信息时出现错误
   指定的错误是:
   0x80070005:拒绝访问
   您没有运行所请求的操作的权限

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

Windows exécute PHP régulièrement

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

2.上面'"'2、添加一个任务计划,在(如图2所示)这一步输入命令:D:/php4/php.exe -q D:/php4/test.php",正确形式应为  '"D:/php4/php.exe'" -q '"D:/php4/test.php'"  ,即路径要用双引号括住.

相关推荐:

window下如何实现定时执行php脚本

windows定时执行PHP的技巧 windows10 下载 windows优化大师 windows7 64位旗舰

Linux下crontab定时执行PHP程序的方法

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn