ah ho capito..

si l'applicazione è un db, però per leggere la classifica non la faccio direttamente da una tabella, ma:

- recupero tutti i voti da una tabella "votazioni" (quindi anche i nomi degli utenti, l'ora del voto.. in modo da impedire doppie votazioni)

- li metto in relazione ad una seconda tabella che raccoglie le possibilità di voto (item1, item2, item3...)

- tramite un array_multisort mi creo un secondo array istantaneo che mi crea la classifica in ordine di voto

per fare come dite voi potrei salvare questa classifica su un'altra tabella e aggiungere il campo, confrontandolo con i giorni successivi.
posso provare..