Confronto orari in variabili e operazioni

  • Creatore Discussione Creatore Discussione Ariswan
  • Data di inizio Data di inizio

Ariswan

Nuovo Utente
8 Mar 2012
11
0
0
Salve a tutti i lettori;

nonostante sia un noob di PHP, sto scrivendo la prima faticosa applicazione ma adesso sono bloccato ad un ciclo di confronto fra orari:

ho due array contenute in altrettante variabili, $sched e $stim, la prima mi da degli orari schedulati, l'altra mi da i rispettivi orari reali, quando faccio un echo di una delle due visualizzo tutti gli orari, schedulati o reali, nel formato 00:00.
Dopo aver scritto due cicli for che leggono ogni stringa, prima di $sched e poi di $stim, non so più come fare per confrontare le due variabili e visualizzare soltanto gli orari con una differenza di tre ore, ad esempio, se un'orario schedulato è uguale a 12:25 e il rispettivo orario reale è uguale a 15:25 devo visualizzare la stringa, altrimenti no.

Il motivo principale dell'apertura di questo topic è perché su internetz non ho trovato ancora informazioni che fanno al caso mio e tra il manuale di php con millemila funzioni per la gestione delle date, timestamp e così via dicendo, non so di preciso come proseguire, se trasformare ogni elemento delle variabile in numero intero, in timestamp.. boh.
Magari esiste una funzione che fa al caso mio..
 
Qualcosa del genere dovrebbe andare:
PHP:
<?php
function makeTime($var)
{
    $parts = explode(':', $var);
    
    return mktime($parts[0], $parts[1]);
}

$sched = '12:25';
$real  = '15:25';

$schedTime = makeTime($sched);
$realTime  = makeTime($real);

if ((($realTime - $schedTime) / 3600) >= 3) {
    // differenza tra tempo reale e tempo schedulato maggiore di 3 ore
}
?>
 

Discussioni simili