Per rispondere sul forum alla discussione ‘Creare php automatico‘ mi sono cimentato nella traduzione di Pseudo-cron.php - use cron jobs just with PHP!

In pratica per eseguire uno script in un determinato giorno, determinata ora ecc.. necessitiamo di questo script: pseudo-cron v1.3

Di solito i regular task come i backup dei database usano il cron jobs. Con esso puoi pianificare quando un comando sarà eseguito. Ma la maggior parte dei proprietari di siti web non possono creare un cron jobs sul loro web server - I fornitori di server chiedono un extra per averlo.
La sola cosa certa è che abbastanza spesso succede che i webmaster hanno bisogno del cron jobs. In pratica ecco cosa fa uno pseudo-cron: per ogni pagina aperta dall’utente controlla se un qualsiasi cron jobs dovrebbe essere richiamato prima di aprire la pagina stessa. Se esiste un qualsiasi cron jobs esso verrà richiamato.

Ogni pseudo-cron usa una sintassi molto simile a quella di Unix. Per una visione più vasta della sintassi usata puoi dare un’occhiata a UNIXGEEKS. La sintassi usata da un pseudo-cron è differente dalla sintassi della pagina precedentemente linkata per i seguenti punti:

* Non ci sono colonne
* I comandi eseguiti dovono essere un include()able file (il quale potrà contenere ulteriore codice PHP)

Tutta la definizione dei jobs sarà contenuta in un file di testo con un determinato nome (di solito crontab.txt). Ecco di seguito un esempio di un crontab file:

#comments start with ‘#’
#mi h d m dow job comment
0 5 * * Sun cronjobs/dump.inc.php # fa un db dump ogni domenica alle 5 del mattino
40 5 2 * * cronjobs/sendlog.inc.php # invia i log del server dell’ultimo mese
*/15 8-19 * * Mon-Fri cronjobs/refr_ext.inc.php # aggiorna le risorse esterne

L’ultima linea richiamerà cronjobs/refr_ext.inc.php ogni 15 minuti tra le 8 e le 19 dal Lunedi al Venerdi.

Features
Esegue qualsiasi script PHP
Esegue script periodici o a tempo controllato
Esegue i log di tutti i jobs eseguiti
Può funzionare in una pagina HTML tramite un tag IMG
Segue la sintassi del cron di Unix
Invia una email con i risultati

Uso
Modifica le variabili nella sezione config per peremttere di far girare lo script sul tuo server.
Scrivi uno script PHP che fa ciò che desideri in maniera regolare. Assicurati che ogni paths sia legato allo script del pseudo-cron con include()s.
Setta il tuo file crontab con il tuo script
Includi il file pseudo-cron.inc.php in tutte le pagine
Aspetta il prossimo schedule :)

Nota
Puoi registrare messaggi dal tuo job script nel file log dello pseudo-cron’s richiamando logMessage(”log a message”)

Per maggiori dettagli vieni sul forum ;)