allora, io uso un calendario che si sviluppa con timestamp

in pratica prendi con mktime prendi l'inizio della settimana e la fine della settimana.
con entrambi i timestamp puoi fare i range di uso

comunque eè un bel lavoro, ne facile ne veloce.