Ho iniziato i lavori...
Per ogni operatore ho creato una stringa contenente tutti gli appuntamenti (orario di inizio / orario di fine) divisi dai trattini. Nel creare la lista, tramite la funzione strpos sono riuscito a togliere anche gli appuntamenti identici (stesso orario di inizio e di fine). . La situazione è questa:
04:20/04:30---05:50/06:00---13:00/13:10---14:50/15:00---15:45/16:00---17:50/18:00---18:30/18:45---20:15/20:20---22:00/22:15---00:40/00:45---00:45/00:50---07:15/07:30---06:50/07:00---14:00/14:10---15:50/16:00---16:45/17:00---18:50/19:00---21:15/21:20---23:00/23:15---01:40/01:45---01:45/01:50---19:30/19:45---08:15/08:30---16:20/16:30---22:15/22:30---23:15/23:30---15:00/15:10---20:30/20:45---05:30/05:45---06:30/06:45---16:00/16:10---16:50/17:00---17:00/17:15---18:45/19:00---18:00/18:15---19:45/20:00
Ora, tramite la funzione explode, creo un array sfruttando questa lista e subito dopo lo riordino in ordine crescente (i trattini li rimetto solo per la stampa):
00:40/00:45---00:45/00:50---01:40/01:45---01:45/01:50---04:20/04:30---05:30/05:45---05:50/06:00---06:30/06:45---06:50/07:00---07:15/07:30---08:15/08:30---13:00/13:10---14:00/14:10---14:50/15:00---15:00/15:10---15:45/16:00---15:50/16:00---16:00/16:10---16:20/16:30---16:45/17:00---16:50/17:00---17:00/17:15---17:50/18:00---18:00/18:15---18:30/18:45---18:45/19:00---18:50/19:00---19:30/19:45---19:45/20:00---20:15/20:20---20:30/20:45---21:15/21:20---22:00/22:15---22:15/22:30---23:00/23:15---23:15/23:30
A questo punto c'è un modo per unire gli appuntamenti che si accavallano e quelli che sono già uniti, perché non ci sono minuti di intervallo (es. 22:00/22:15 con 22:16/22:35)?
Diciamo che mi potrei già accontentare, perché si riesce a risalire agli orari disponibili. E' anche vero che visualizzare direttamente gli orari disponibili sarebbe tutta un'altra cosa. A questo punto come mi consigliate di procedere?

Rispondi quotando
. Quindi, con quello che sto cercando di fare, ho una lista di orari disponibili che sicuramente andranno a buon fine qualsiasi giorno io programmi l'appuntamento. Purtroppo, come ho già detto, mi baso su un file scaricato. Se ora utilizzo un orario libero per un appuntamento futuro, più tardi mi dovrò ricordare di non utilizzare lo stesso orario, altrimenti siamo punto e a capo. Scaricare il file excel mi porta via quasi una mezz'oretta. Diciamo che il programma che utilizzo per lavoro, oltre ad essere estremamente lento, fa un po' acqua da tutte le parti. 