è un po' complicato.
Devi avere accesso al server con alti privilegi (in genere root): sui sistemi linux è possibile utilizzare un sistema (...crontab) che consente di eseguire a intervalli specificati o in certe date o quando vuoi dei comandi sul server.
Si tratta quindi di configurare un file crontab (è un file di testo dove ogni riga rappresenta un comando da eseguire tipo:
0 10 10 * * /percorso/comando.cgi
che vuole dire "esegui comando.cgi nella cartella percorso ogni mese il giorno 10 alle 10.00")
volendo si può anche far eseguire un file php, ma non è possibile richiamarlo direttamente (se è disponibile l'interprete si può richiamare questo con parametro il nome del file php da eseguire)
Come vedi si tratta di configurare il server, non di creare codice particolare php.
Naturalmente esistono vari comandi (non solo i file crontab) e per diversi s.o.
Che dire? E' un tipo di programmazione "avanzata"... vedi se può interessarti o se preferisci trovare altre soluzioni.
In caso ti possa interessare si cercano un po' di link con istruzioni (ricorda che devi avere accesso al server, comunque)...