C'est la meilleure explication avec code en PHP que j'ai trouvée jusqu'à présent :
http://code.tutsplus.com/tutorials/managing-cron-jobs-with-php--net-19428
En bref :
Bien que la syntaxe de la programmation d'un nouveau travail puisse sembler intimidante à première vue, elle est en fait relativement simple à comprendre une fois que vous l'avez décomposée. Une tâche cron comporte toujours cinq colonnes, chacune représentant un "opérateur" chronologique suivi du chemin complet et de la commande à exécuter :
* * * * * home/path/to/command/the_command.sh
Chacune des colonnes chronologiques a un rapport spécifique avec le calendrier de la tâche. Elles sont les suivantes :
Minutes represents the minutes of a given hour, 0-59 respectively.
Hours represents the hours of a given day, 0-23 respectively.
Days represents the days of a given month, 1-31 respectively.
Months represents the months of a given year, 1-12 respectively.
Day of the Week represents the day of the week, Sunday through Saturday, numerically, as 0-6 respectively.
Ainsi, par exemple, si l'on voulait programmer une tâche pour le premier jour de chaque mois à midi, cela ressemblerait à ceci :
0 0 1 * * home/path/to/command/the_command.sh
Si nous voulions programmer une tâche à exécuter tous les samedis à 8h30, nous l'écririons comme suit :
30 8 * * 6 home/path/to/command/the_command.sh
Il existe également un certain nombre d'opérateurs qui peuvent être utilisés pour personnaliser encore plus le programme :
Commas is used to create a comma separated list of values for any of the cron columns.
Dashes is used to specify a range of values.
Asterisksis used to specify 'all' or 'every' value
Visitez le lien pour l'article complet, il explique :
- Quel est le format du cronjob si vous voulez le saisir/modifier manuellement.
- Comment utiliser PHP avec la bibliothèque SSH2 pour s'authentifier en tant qu'utilisateur, quelle crontab vous allez éditer.
- Classe PHP complète avec toutes les méthodes nécessaires pour l'authentification, la modification et la suppression des entrées crontab.